netty+websocket 客服聊天室

上传者: crazyzxljing0621 | 上传时间: 2021-04-07 13:54:57 | 文件大小: 4.62MB | 文件类型: RAR
实现了用户与客服功能,客服服务队列,服务器排队 详见: http://blog.csdn.net/crazyzxljing0621/article/details/53690505 系统概要 1. 用户通过websocket与netty创建通讯 2. 用户链接到服务器队列中 3. 队列通过轮训机制判定netty是否有可以服务的客服 4. 如果有则将队列中的用户channel转给客服进行点对点通讯 5. 队列有自己的最大容载量 6. 每个客服可以同时服务N个用户 7. 没有空闲客服的时候用户们只能在队列中慢慢排队 8. 队列状态及实时位置由队列向队列内用户推送 9. 当有空闲位置的时候,轮训机制会将队列中首位用户放到netty中进行与客服的通讯挂钩 10. 其实对于服务器队列可以抽出来做到一个单独的项目中,用户先访问队列项目,队列项目再将用户channel发送给处理消息的netty项目

文件下载

资源详情

[{"title":"( 55 个子文件 4.62MB ) netty+websocket 客服聊天室","children":[{"title":"callServer","children":[{"title":"bin","children":[{"title":"log4j.properties <span style='color:#111;'> 916B </span>","children":null,"spread":false},{"title":"com","children":[{"title":"tools","children":[{"title":"IniConf.class <span style='color:#111;'> 2.41KB </span>","children":null,"spread":false},{"title":"ServerLog.class <span style='color:#111;'> 1.97KB </span>","children":null,"spread":false}],"spread":true},{"title":"model","children":[{"title":"Data.class <span style='color:#111;'> 907B </span>","children":null,"spread":false},{"title":"UserServerPojo.class <span style='color:#111;'> 2.81KB </span>","children":null,"spread":false},{"title":"JSONtype.class <span style='color:#111;'> 841B </span>","children":null,"spread":false},{"title":"Type.class <span style='color:#111;'> 681B </span>","children":null,"spread":false},{"title":"SysCode.class <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false}],"spread":true},{"title":"StartMsgService.class <span style='color:#111;'> 654B </span>","children":null,"spread":false},{"title":"service","children":[{"title":"core","children":[{"title":"ServerThread.class <span style='color:#111;'> 5.52KB </span>","children":null,"spread":false},{"title":"action","children":[{"title":"Create.class <span style='color:#111;'> 715B </span>","children":null,"spread":false},{"title":"Msg.class <span style='color:#111;'> 3.90KB </span>","children":null,"spread":false},{"title":"Join.class <span style='color:#111;'> 5.17KB </span>","children":null,"spread":false}],"spread":true},{"title":"DbService.class <span style='color:#111;'> 1.58KB </span>","children":null,"spread":false},{"title":"ContainerChange.class <span style='color:#111;'> 3.63KB </span>","children":null,"spread":false}],"spread":true},{"title":"Server$1.class <span style='color:#111;'> 1.96KB </span>","children":null,"spread":false},{"title":"MsgExecute.class <span style='color:#111;'> 2.28KB </span>","children":null,"spread":false},{"title":"Server$3.class <span style='color:#111;'> 1.41KB </span>","children":null,"spread":false},{"title":"Server.class <span style='color:#111;'> 3.71KB </span>","children":null,"spread":false},{"title":"Server$2.class <span style='color:#111;'> 676B </span>","children":null,"spread":false},{"title":"WebSocketHandler.class <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"MsgHandler.class <span style='color:#111;'> 3.14KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"SysConfig.properties <span style='color:#111;'> 503B </span>","children":null,"spread":false}],"spread":true},{"title":".settings","children":[{"title":"org.eclipse.core.resources.prefs <span style='color:#111;'> 157B </span>","children":null,"spread":false},{"title":"org.eclipse.jdt.core.prefs <span style='color:#111;'> 598B </span>","children":null,"spread":false}],"spread":true},{"title":"src","children":[{"title":"log4j.properties <span style='color:#111;'> 916B </span>","children":null,"spread":false},{"title":"com","children":[{"title":"tools","children":[{"title":"ServerLog.java <span style='color:#111;'> 1.52KB </span>","children":null,"spread":false},{"title":"IniConf.java <span style='color:#111;'> 1.33KB </span>","children":null,"spread":false}],"spread":true},{"title":"model","children":[{"title":"Type.java <span style='color:#111;'> 416B </span>","children":null,"spread":false},{"title":"Data.java <span style='color:#111;'> 907B </span>","children":null,"spread":false},{"title":"UserServerPojo.java <span style='color:#111;'> 2.41KB </span>","children":null,"spread":false},{"title":"JSONtype.java <span style='color:#111;'> 813B </span>","children":null,"spread":false},{"title":"SysCode.java <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false}],"spread":true},{"title":"StartMsgService.java <span style='color:#111;'> 290B </span>","children":null,"spread":false},{"title":"service","children":[{"title":"Server.java <span style='color:#111;'> 3.78KB </span>","children":null,"spread":false},{"title":"core","children":[{"title":"ContainerChange.java <span style='color:#111;'> 3.76KB </span>","children":null,"spread":false},{"title":"action","children":[{"title":"Join.java <span style='color:#111;'> 5.00KB </span>","children":null,"spread":false},{"title":"Msg.java <span style='color:#111;'> 3.93KB </span>","children":null,"spread":false},{"title":"Create.java <span style='color:#111;'> 426B </span>","children":null,"spread":false}],"spread":true},{"title":"ServerThread.java <span style='color:#111;'> 6.10KB </span>","children":null,"spread":false},{"title":"DbService.java <span style='color:#111;'> 1.47KB </span>","children":null,"spread":false}],"spread":true},{"title":"MsgHandler.java <span style='color:#111;'> 1.81KB </span>","children":null,"spread":false},{"title":"MsgExecute.java <span style='color:#111;'> 1.77KB </span>","children":null,"spread":false},{"title":"WebSocketHandler.java <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"SysConfig.properties <span style='color:#111;'> 503B </span>","children":null,"spread":false}],"spread":true},{"title":".project <span style='color:#111;'> 386B </span>","children":null,"spread":false},{"title":".classpath <span style='color:#111;'> 812B </span>","children":null,"spread":false},{"title":"lib","children":[{"title":"ezmorph-1.0.6.jar <span style='color:#111;'> 84.46KB </span>","children":null,"spread":false},{"title":"commons-beanutils-1.8.0.jar <span style='color:#111;'> 225.90KB </span>","children":null,"spread":false},{"title":"commons-logging.jar <span style='color:#111;'> 52.11KB </span>","children":null,"spread":false},{"title":"commons-lang-2.4.jar <span style='color:#111;'> 255.67KB </span>","children":null,"spread":false},{"title":"commons-collections-3.2.jar <span style='color:#111;'> 557.87KB </span>","children":null,"spread":false},{"title":"log4j-1.2.17.jar <span style='color:#111;'> 478.40KB </span>","children":null,"spread":false},{"title":"json-lib-2.4-jdk15.jar <span style='color:#111;'> 155.39KB </span>","children":null,"spread":false},{"title":"netty-all-4.1.6.Final.jar <span style='color:#111;'> 3.37MB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

  • janey1217 :
    详细的使用没有,不知道要怎么测试多用户在线
    2018-12-05
  • 哈哈太我 :
    不错,谢谢分享。
    2018-10-18
  • xiake123 :
    不错,谢谢分享。
    2018-07-04
  • seanliuyang :
    写的不错,对我很有帮助
    2018-06-23
  • qq_17613971 :
    很不错,资源很好,很多东西都很实用
    2018-05-10
  • lixuekun820 :
    有用不?希望能有帮助
    2018-02-03
  • xlzlovexx :
    很不错,资源很好,很多东西都很实用
    2018-01-21
  • 上等猪头肉 :
    楼主有页面吗
    2017-06-05

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明