Soul网关websocket同步数据

websocket同步数据

初始化属性部分

首先启动soul-admin项目,然后启动soul-boostrap项目,可以明显发现websocket连接成功

奇怪的是,使用昨天测试SpringCloud的数据库发现webosocket无法连接成功。后续可以继续尝试下这种问题发生的原因

分析pom文件的依赖可知。由于soul-boostrap是springboot项目,所以websocket相关的配置是从soul-spring-boot-starter-sync-data-websocket加载

这个例子中涉及到starter相关的知识不做解读了。在这个configration中通过注入bean注入了websocket的配置以及几个空的订阅器包括插件订阅器pluginSubscriber,元数据订阅器metaSubscribers和认证订阅器authSubscribers用来监听admin项目的数据的改变。
此处的websocketConfig属性由配置文件注入。其他属性特别是pluginSubscriber数据的ObjectProvider是Spring4.3之后的一个新特性。简单来说就是可以代替@Autowired的作用。具体的示例,可以参考https://www.cnblogs.com/fightingting/p/14300409.html 和 https://www.cnblogs.com/fengxueyi/p/13888562.html

数据准备和连接部分

从代码可以看到。对于websocket这一块。做好了多个websocket的连接的做法。随后阻塞的连接每个客户端。然后利用线程池每隔30秒检测是否关闭。关闭的话回去尝试重连接。如果不能重新连接会抛出错误

发送消息部分

关于websocket发送消息的部分,我之前使用spring-websocket做过一个类似的案例https://zhaozhen.blog.csdn.net/article/details/80356392 。其实主要就是利用onMessage来传递数据。即在修改时由admin发送数据。随后网关部分做相应操作

接下来有了这样的问题。接收到了数据之后WebsocketDataHandler的executor并没有实现什么实际的操作,这个需要后续在组件操作时继续研究

(0)

相关推荐

  • Soul网关同步数据逻辑初探

    Http同步数据 按照前面两个同步数据的分析,可以看到Http同步跟其他的同步的加载基本一样.不同的地方主要是加载数据的操作 加载数据的过程主要是 private void start() { // ...

  • websocket粘包处理

    websocket 底层使用的tcp 协议. 当一次发送数据过长时,tcp 会把数据封成多个包发送:同样当数据过短时, 会把数据合并成一个包发送,这种现象就是粘包.粘包的情况也有可能是接收端造成的.[ ...

  • Soul源码中dubbo和sofa的执行过程

    Soul源码中dubbo和sofa的执行过程 Soul源码中dubbo的执行过程 首先在 soul-examples-apache-dubbo-service 中依赖的soul-client中Apac ...

  • Soul网关Hystrix插件相关知识点扫盲

    线程隔离和信号量隔离 Hystrix 里面核心的一项功能,其实就是所谓的资源隔离,要解决的最最核心的问题,就是将多个依赖服务的调用分别隔离到各自的资源池内.避免说对某一个依赖服务的调用,因为依赖服务的 ...

  • Soul网关限流插件Sentinel和Resilience4J扫盲

    首先看Soul中Sebtinel可以配置的项目 对应的配置的含义 degrade count:熔断阈值 whether to open the degrade (1 or 0):是否开启熔断,1开启 ...

  • Soul网关插件之Spring Cloud

    com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known serve ...

  • Soul App春节大数据:从就地过年的Z世代,解读爆发中的“轻社交”需求

    2021年春节期间,近百万年轻用户在社交平台Soul上许下新年心愿:在牛年,能够收获到灵魂相交的感情.更好的事业和财富,以及健康的身体. 近日,备受年轻人喜爱的社交平台Soul App发布春节大数据, ...

  • 苹果手机换华为、小米怎么同步数据?来了!

    将「雷科技Lite」收藏为我的小程序,不再错过精彩内容 雷科技数码3C组 编辑 | MoFirLee 苹果.安卓手机之间同步数据其实不算太难,难的是没有找对方法.当然,游戏数据无法互通,这里面的问题就 ...

  • 奥迪代同步数据的计算要求

    奥迪的BCM系统由于现在出现了加密适配器所以A4 Q5 A5都已经变得很简单了,带有同步数据的就比较麻烦例如A7 A8 A6等车辆.如果完全免拆OBD获取自定义请求,现在有些师傅都无法计算或者能计算价 ...

  • Excel :自动同步网站数据

    有时我们需要从网站获取一些数据,传统方法是通过复制粘贴,直接粘到 Excel 里.不过由于网页结构不同,并非所有的复制都能有效.有时即便成功了,得到的也是"死数据",一旦后期有更新 ...

  • 投资近20亿元,河南最大第三方数据中心开园!“黄河云”同步迁移上线

    随着中原科技城蓝图的逐渐铺开,5月10日上午,中原大数据中心开园暨黄河云迁移上线仪式在郑州白沙园区黄河云谷智能制造小微企业园举行. 新基建是未来新经济.新技术.新产业的基础设施支撑.作为河南省信息产业 ...