当前位置:   article > 正文

springboot websocket session超时_使用spring boot+WebSocket 实现定时消息推送(基于注解)...

websocketsession.sendmessage发送时间超长
小Hub领读:

Springboot+websocket的组合,可以完成很多即时聊天、通知等功能,来看看一个小例子,了解一下双工通讯哈!


  • 作者:清风徐来水波不清

  • https://www.jianshu.com/p/62132f605669

前言

前面文章也有 websocket 相关的文章,为什么这次又要重新写一篇呢?第一这篇文章需求业务场景有些不同,第二这篇文章 websocket 基本上完全基于注解操作简单。
其实能实现定时消息推送的技术有很多,Dwr、goeasy、comer4j 、netPush 等技术也可以完全实现这个功能.

  • DWR 之前文档的消息推送也有使用到,但是在实际项目中表现的并不是很好,毕竟技术相对较老,对于一些浏览器版本兼容性不是很好,而且容易出现消息丢失的情况,研究半天源码改动很多无法解决这个问题。

  • GoEasy 其实在消息推送方面表现还是比较良好,但是其是收费的,我们项目基本使用开源产品对应收费产品合规性检测肯定无法通过,因此没有考虑。

  • 后面两个技术没有具体研究过,目前觉得 webSocket 可以完美解决我现在业务需求。

websocket 简介

websocket 协议是在 http 协议上的一种补充协议,是 html5 的新特性,是一种持久化的协议。其实 websocket 和 http 关系并不是很大,不过都是属于应用层的协议。关于更多概念大家可以参考下面文章讲述的很详细,接下来我们就开始实战。

https://www.cnblogs.com/fuqiang88/p/5956363.html

websocket 定时推送

本教程基于 springboot 为脚手架,没使用过 springboot 同学可以看往期文章,或者直接去 spring 官网拉一个 springboot 基础项目下来。

加入依赖

在 springboot 的项目中添加一下 webSocket 依赖,一般一项新技术的引入在 springboot 中也只是引用一个此技术 starter 的依赖,其他配置基本 springboot 帮我们解决了。

org.springframework.boot

spring-boot-starter-websocket

配置

新建一个 Java 配置类,注入 ServerEndpointExporter 配置,如果是使用 springboot 内置的 tomcat 此配置必须,如果是使用的是外部 tomcat 容器此步骤请忽略。看 spring 源码中这样描述,使用此配置可以关闭 servlet 容器对 websocket 端点的扫描,这个暂时没有深入研究。

@Configuration

public class WebSocketConfig {

@Bean

public ServerEndpointExporter serverEndpointExporter() {

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/717251
推荐阅读
相关标签
  

闽ICP备14008679号