博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
netty-socketio使用namespace
阅读量:6348 次
发布时间:2019-06-22

本文共 1369 字,大约阅读时间需要 4 分钟。

一、简介

  netty-socketio中的namespace可以用于区别在相同连接地址下的不同用户,当两个不同的用户打开同一个页面的时候,可以使用namespace用来标记不同用户。例如我们可以在用户中心页面动态的获取用户的消息数目。这里就可以使用到namespace。因为每个用户的id都是不一样的,我们可以使用id来标识每个用户的namespace。

二、示例

  服务器端代码:

package com.test.socket;import com.corundumstudio.socketio.Configuration;import com.corundumstudio.socketio.SocketIONamespace;import com.corundumstudio.socketio.SocketIOServer;public class SocketServer2 {    public static void main(String[] args) throws InterruptedException {        Configuration config = new Configuration();        config.setHostname("localhost");        config.setPort(9092);        final SocketIOServer server = new SocketIOServer(config);         server.start();        String uid = "1111";        String namespace = String.format("/%s_%s", "msg", uid);//构建命名空间        SocketIONamespace chat1namespace = server.addNamespace(namespace); //设置命名空间        for (int i = 0; i < 50; i++) {             Thread.sleep(2000);              chat1namespace.getBroadcastOperations().sendEvent("message", 1); //每次发送数字一        }        Thread.sleep(Integer.MAX_VALUE);        server.stop();    }}

  客户端message.html代码:

1  2  3  4 
5 Insert title here 6 7 8 9 21 22 23 24 25 26

Netty-socketio Demo Chat

27 28
29 30
31
32 消息总数:
0 33 34 35 36 37
64

  启动服务器,访问该网页,消息总数会每次加1。

转载地址:http://prpla.baihongyu.com/

你可能感兴趣的文章
vue实例的生命周期
查看>>
UML类图几种关系的总结 .
查看>>
Socket 一对多通信
查看>>
LVS负载均衡器DR模型的实现
查看>>
percona mysql server5.7基于gtid的主从复制
查看>>
《代码大全》阅读笔记-4-关键的“构建”决策
查看>>
javascript之DOM操作
查看>>
分布式系统的面试题8
查看>>
Python类、模块、包的区别
查看>>
MySQL使用总结
查看>>
我的Android进阶之旅------>Android采用AES+RSA的加密机制对http请求进行加密
查看>>
Java 打开Excel,往Excel中存入值,保存的excel格式分别是xls和xlsx
查看>>
12、反转字符串
查看>>
网络编程之网络协议
查看>>
性能指标
查看>>
寒江_第一个驱动
查看>>
or小计
查看>>
04-课堂笔记-函数相关
查看>>
Vue(组件&过滤器)
查看>>
spring this.logger.isDebugEnabled()
查看>>