WebSocketServer
@Component
@ServerEndpoint(value = "/endpoint/ws")
public class WebSocketServer {
private final Logger logger = LoggerFactory.getLogger(getClass());
private static final AtomicInteger onlineCount = new AtomicInteger();
@OnOpen
public void onOpen(Session session, @PathParam("sid") String sid) {
//在线数加1
onlineCount.incrementAndGet();
logger.info("新窗口监听 {}, 当前在线人数 {}",sid,onlineCount.get());
} @OnClose
public void onClose() {
//在线数减1
onlineCount.decrementAndGet();
logger.info("连接关闭, 当前在线人数为 {}",onlineCount.get());
} @OnError
public void onError(Session session, Throwable error) {
logger.warn("发生错误, 非正常关闭 {}, 当前在线人数为 {}", onlineCount.get());
}
}
WebSocketServer的更多相关文章
- SuperSocket.WebSocket.WebSocketServer.Setup无法启动
新学一词:达克效应.引出一句:"无知要比知识更容易产生自信."-- 查尔斯·达尔文 写在前面 在三亚呆了半个月了,三亚的冬天好热啊,让我回忆起了放暑假时下午百无聊赖的时光 { 一睡 ...
- Spring Boot Service注入为null mapper注入为null @Component注解下@Value获取不到值 WebsocketServer类里无法注入service
最近搞了一下websocket前台(这个网上有很多的教程这里就不班门弄斧啦) 以及前后台的交互 和后台的bug(搞了两天) 也是状态频发 bug不断 下面说一说问题. Websocket主类里面无法注 ...
- iOS&Node 搭建WebSocketServer实现聊天
Server端使用的是Node.JS里的一个Socket.io的模块 iOS客户端使用的是SocketIO和SBJson框架 作者的源码有些问题,我做了一些自定义的修改. 代码地址:https://g ...
- 借助Nodejs探究WebSocket
文章导读: 一.概述-what's WebSocket? 二.运行在浏览器中的WebSocket客户端+使用ws模块搭建的简单服务器 三.Node中的WebSocket 四.socket.io 五.扩 ...
- JavaScript之web通信
web通信,一个特别大的topic,涉及面也是很广的.因最近学习了 javascript 中一些 web 通信知识,在这里总结下.文中应该会有理解错误或者表述不清晰的地方,还望斧正! 一.前言 1. ...
- H5 WebSocket 如何和C#进行通信
HTML5作为下一代的 Web 标准, 拥有许多引人注目的新特性,如 Canvas.本地存储.多媒体编程接口.WebSocket 等.WebSocket 在浏览器和服务器之间提供了一个基于 TCP 连 ...
- 使用WebRTC搭建前端视频聊天室——信令篇
博客原文地址 建议看这篇之前先看一下使用WebRTC搭建前端视频聊天室——入门篇 如果需要搭建实例的话可以参照SkyRTC-demo:github地址 其中使用了两个库:SkyRTC(github地址 ...
- CheungSSH国产自动化运维工具开源Web界面
CheungSSH web2.0 发布文档 CheungSSH 简介 CheungSSH是一款国人自主研发的Linux运维自动化管理服务器软件,秉着为企业降低运营成本,解放管理员双手和自动化生产的理念 ...
- .NET 的 WebSocket 开发包比较(转)
.NET 的 WebSocket 开发包比较 编者按 本文出现在第三方产品评论部分中.在这一部分的文章只提供给会员,不允许工具供应商用来以任何方式和形式来促销或宣传产品.请会员报告任何垃圾信息或广告. ...
随机推荐
- JavaScript之 BOM 与 DOM
1. JavaScript 组成 2. DOM.DOCUMENT.BOM.WINDOW 区别 DOM 是为了操作文档出现的 API , document 是其的一个对象:BOM 是为了操作浏览器出现的 ...
- [LeetCode] 349. Intersection of Two Arrays 两个数组相交
Given two arrays, write a function to compute their intersection. Example 1: Input: nums1 = [1,2,2,1 ...
- dbcp与c3p0的区别
众所周知,无论现在是B/S或者是C/S应用中,都免不了要和数据库打交道.在与数据库交 互过程中,往往需要大量的连接.对于一个大型应用来说,往往需要应对数以千万级的用户连接请求,如果高效相应用户请求,对 ...
- laravel 配置自动加载多路由文件
在 app\Providers\RouteServiceProvider文件下增加方法&注册: 增加之后就可以在routers下建立api文件夹,在里面添加路由了
- postgresql数据库中多个Schemas互相访问
背景: 用postgresql创建了一个数据库userDataBase,在这个数据库中创建了Schemas userA,Schemas userB,Schemas userC三个Schemas之后,给 ...
- java8新特性1--Lambda表达式
一.Lambda表达式是什么? Lambda表达式有两个特点 一是匿名函数,二是可传递. 匿名函数的应用场景是 通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用Lambda表达式.lam ...
- redis示例
1. 引入redis相关包 <!-- redis 相关包--> <dependency> <groupId>org.springframework.data< ...
- 链表习题(8)-寻找单链表中数据域大小为k的结点,并与前一结点交换,如果前一结点存在的情况下
/*寻找单链表中数据域大小为k的结点,并与前一结点交换,如果前一结点存在的情况下*/ /* 算法思想:定义两个指针,pre指向前驱结点,p指向当前结点,当p->data == k的时候,交换 p ...
- python 之 网络编程(基于TCP协议的套接字通信操作)
第八章网络编程 8.1 基于TCP协议的套接字通信 服务端套接字函数 s.bind() 绑定(主机,端口号)到套接字 s.listen() 开始TCP监听 s.accept() 被动接受TCP客户的连 ...
- hyper-v安装windows7
win7镜像下载地址 http://msdn.itellyou.cn/ 该网站都是微软系列的正规软件 非常好用 在hyper-v 虚拟机安装windows系统时,到百度搜索了几个iso 都不好用 到h ...