可以做申论的网站,旅游网站系统的设计与实现,常德烟机网站,企业信息管理系统的发展历程之前在单体架构项目中使用了websocket主动推送消息的功能#xff0c;后来改成了微服务架构#xff0c;结果发现部分消息丢失#xff0c;没能推送给客户端#xff1b;深入排查发现服务端无法感知websocket连接状态#xff0c;但是在单体架构里面是没这个问题的#xff0c;…之前在单体架构项目中使用了websocket主动推送消息的功能后来改成了微服务架构结果发现部分消息丢失没能推送给客户端深入排查发现服务端无法感知websocket连接状态但是在单体架构里面是没这个问题的后来发现是网关在处理客户端主动断开的情况时发生了异常。
查阅资料发现是spring gateway的bug并且相关issue在2023年4月已经关闭于是根据时间节点找到了4月之后的一个版本(3.1.8)的spring-cloud-gateway-server替换了原来的依赖重新打包测试发现问题解决特此记录。
个人使用的spring cloud alibaba 2021.0.6.0版本对应Spring Cloud 2021.0.5版本。
关键pom修改如下
dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-gateway/artifactId!-- 排除旧版本 --exclusionsexclusiongroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-gateway-server/artifactId/exclusion/exclusions
/dependency!-- 引入新版本 --
dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-gateway-server/artifactIdversion3.1.8/version
/dependency多说一句 软件是在不断的迭代优化的如果条件允许尽量跟上稳定发布版本。