WebSocket实现负载均衡

该博客探讨了在实现WebSocket负载均衡时遇到的问题,包括如何在OpenFeign中处理WebSocket转发。作者提出通过在网关层进行负载均衡的解决方案,启用Spring Cloud Gateway的动态路由功能,结合`lb://`前缀实现服务间的负载均衡。配置示例和WebSocket代码展示了这一方法的有效性,从而成功地在网关层面实现了WebSocket的负载均衡。
摘要由CSDN通过智能技术生成

之前WebSocket解决了在集群下session不互通的问题,链接

背景: 想要实现负载均衡,第一个想法就是加个服务消费者用openfeign做负载均衡,结果实施起来发现问题有点多,先是没想到WebSocket要具体怎么转发,@GetMapping还是@PostMapping咋想都不可以吧,又想着做个客户端,创建个静态map保存客户端对象自己整个负载均衡,刚想没问题,再想想,我在后端通过客户端连接了WebSocket,那页面上的推送咋整…现在想想有点降智。
解决: 以前都是在网关去路由到服务消费者再由服务消费者去调用服务提供者。(我用的gateway做的网关),既然网关也可以负载均衡那直接就在网关进行负载均衡呗。

网关配置

spring:
  cloud:
    gateway:
      discovery:
        locator:
          enabled: true #开启从注册中心动态创建路由功能,利用微服务名路由
      routes:
        - id: 服务名 #路由id 可配置多个不同id
          uri: lb://服务名 #若匹配则转发的路由地址,lb就是负载均衡的意思
          predicates: #断言,所匹配的url规则
            - Path=/liaotian/**

WebSocket部分代码
在这里插入图片描述
结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看出实现了负载均衡。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翎墨袅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值