日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

springboot基于Redis發布訂閱集群下WebSocket的解決方案

瀏覽:45日期:2023-03-27 17:15:12
一、背景

單機節點下,WebSocket連接成功后,可以直接發送消息。而多節點下,連接時通過nginx會代理到不同節點。

假設一開始用戶連接了node1的socket服務。觸發消息發送的條件的時候也通過nginx進行代理,假如代理轉到了node2節點上,那么node2節點的socket服務就發送不了消息,因為一開始用戶注冊的是node1節點。這就導致了消息發送失敗。

springboot基于Redis發布訂閱集群下WebSocket的解決方案

為了解決這一方案,消息發送時,就需要一個中間件來記錄,這樣,三個節點都可以獲取消息,然后在根據條件進行消息推送。

二、解決方案(springboot 基于 Redis發布訂閱)

1、依賴

<!-- redis --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- websocket --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId></dependency>

2、創建業務處理類 Demo.class,該類可以實現MessageListener接口后重寫onMessage方法,也可以不實現,自己寫方法。

import com.alibaba.fastjson.JSON;import com.dy.service.impl.OrdersServiceImpl;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.connection.Message;import org.springframework.data.redis.connection.MessageListener;import org.springframework.stereotype.Component; import java.util.HashMap; /** * @program: * @description: redis消息訂閱-業務處理 * @author: zhang yi * @create: 2021-01-25 16:46 */@Componentpublic class Demo implements MessageListener { Logger logger = LoggerFactory.getLogger(this.getClass()); @Override public void onMessage(Message message, byte[] pattern) { logger.info('消息訂閱成功---------'); logger.info('內容:'+message.getBody()); logger.info('交換機:'+message.getChannel()); }}

3、創建PubSubConfig配置類

import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.cache.annotation.EnableCaching;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.data.redis.listener.PatternTopic;import org.springframework.data.redis.listener.RedisMessageListenerContainer;import org.springframework.data.redis.listener.adapter.MessageListenerAdapter; /** * @program: * @description: redis發布訂閱配置 * @author: zhang yi * @create: 2021-01-25 16:49 */@Configuration@EnableCachingpublic class PubSubConfig { Logger logger = LoggerFactory.getLogger(this.getClass()); //如果是多個交換機,則參數為(RedisConnectionFactory connectionFactory, // MessageListenerAdapter listenerAdapter, // MessageListenerAdapter listenerAdapter2) @Bean RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory, MessageListenerAdapter listenerAdapter) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(connectionFactory); // 可以添加多個 messageListener,配置不同的交換機 container.addMessageListener(listenerAdapter, new PatternTopic('channel:demo')); //container.addMessageListener(listenerAdapter2, new PatternTopic('channel:demo2')); return container; } /** * 消息監聽器適配器,綁定消息處理器,利用反射技術調用消息處理器的業務方法 * @param demo 第一步的業務處理類 * @return */ @Bean MessageListenerAdapter listenerAdapter(Demo demo) { logger.info('----------------消息監聽器加載成功----------------'); // onMessage 就是方法名,基于反射調用 return new MessageListenerAdapter(demo, 'onMessage'); } /** * 多個交換機就多寫一個 * @param subCheckOrder * @return */ //@Bean //MessageListenerAdapter listenerAdapter2(SubCheckOrder subCheckOrder) { // logger.info('----------------消息監聽器加載成功----------------'); // return new MessageListenerAdapter(subCheckOrder, 'onMessage'); //} @Bean StringRedisTemplate template(RedisConnectionFactory connectionFactory) { return new StringRedisTemplate(connectionFactory); }}

4、消息發布

@Autowiredprivate RedisTemplate<String, Object> redisTemplate; redisTemplate.convertAndSend('channel:demo', '我是內容');三、具體用法 socket連接成功。 socket消息推送時,把信息發布到redis中。socket服務訂閱redis的消息,訂閱成功后進行推送。集群下的socket都能訂閱到消息,但是只有之前連接成功的節點能推送成功,其余的無法推送。

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
伊人久久亚洲热| 国产精品毛片久久久| 国产精品日韩精品中文字幕| 日本v片在线高清不卡在线观看| 午夜av不卡| 国产精品www.| 久久av网站| 成人午夜网址| 亚洲国产欧美日本视频| 日韩不卡在线| 理论片午夜视频在线观看| 日韩成人精品一区| 99精品综合| 91精品观看| 亚洲综合五月| 7777精品| 精品视频91| 亚洲网站视频| 综合欧美精品| 国产精选在线| 国产一区日韩一区| 中文一区二区| 日韩二区三区在线观看| 鲁大师精品99久久久| 在线亚洲人成| 亚洲少妇诱惑| 日韩区欧美区| 久久精品三级| 97精品一区二区| 蜜桃tv一区二区三区| 视频一区二区欧美| 欧美在线精品一区| 三上亚洲一区二区| 在线亚洲观看| 国产精品嫩模av在线| 中文字幕人成乱码在线观看| 黄色成人91| 国产探花在线精品一区二区| 国产一区二区三区久久 | 97国产成人高清在线观看| 超碰99在线| 亚洲免费中文| 国产精品一区二区av交换| аⅴ资源天堂资源库在线| 三级精品视频| 一区二区三区四区在线观看国产日韩| 麻豆视频在线观看免费网站黄 | 亚洲欧美在线综合| 91伊人久久| 日韩久久电影| 中文字幕av一区二区三区四区| 欧美午夜精彩| 午夜日韩在线| 国产精品入口久久| 精品一区免费| 久久av网址| 国产一区成人| 美女视频免费精品| 日韩中文欧美在线| 国产一区精品福利| 视频精品一区二区| 国产精品成人a在线观看| 免费看日韩精品| 国产精品精品| 日韩视频一二区| 欧美日韩在线观看视频小说| 久久黄色影视| 欧产日产国产精品视频| 蜜臀精品一区二区三区在线观看| 欧美网站在线| 国产乱人伦精品一区| 福利视频一区| 成人日韩精品| 欧美一级网站| 婷婷久久一区| 精品欧美日韩精品| 亚洲欧美久久精品| 久久精品动漫| 欧美一区自拍| 香蕉成人av| 久久精品超碰| 久久最新视频| 亚洲伊人av| 国产精品一区高清| 免费在线观看日韩欧美| 人人香蕉久久| 精品国产精品国产偷麻豆| 婷婷精品久久久久久久久久不卡| 亚洲精品九九| 久久精品免费一区二区三区| 美女久久久久久| 日韩av字幕| 亚洲一区二区av| 亚洲一级特黄| 精品不卡一区| 国产精品调教| 日本午夜精品久久久久| 999国产精品| 精品久久久久中文字幕小说| 97久久亚洲| 亚洲深深色噜噜狠狠爱网站 | 精品日韩一区| 日本大胆欧美人术艺术动态| 欧美中文字幕一区二区| 国产91在线播放精品| 日韩av中文字幕一区| 蜜乳av另类精品一区二区| 午夜欧美巨大性欧美巨大| 精品中国亚洲| 久久99精品久久久久久园产越南| 国产成人精品一区二区三区在线| 自拍日韩欧美| 天堂8中文在线最新版在线| 免费一级欧美在线观看视频 | 成人黄色av| 麻豆国产欧美日韩综合精品二区| 亚洲成人一区在线观看| 精品视频自拍| 国产日韩精品视频一区二区三区| 国产一区二区三区黄网站| 国产精品探花在线观看| 欧美国产日韩电影| 久久三级毛片| 国产成人在线中文字幕| 9999国产精品| 婷婷综合国产| 亚洲专区一区| 男人的天堂久久精品| 日韩在线一区二区| 亚洲欧美在线综合| 日韩和欧美一区二区三区| 亚欧洲精品视频在线观看| 亚洲精品在线国产| 中文字幕av一区二区三区人| 日韩av资源网| 日韩精品第二页| 69堂精品视频在线播放| 欧美日韩a区| 美腿丝袜亚洲三区| 精品久久99| zzzwww在线看片免费| 亚洲午夜黄色| 亚洲一区二区日韩| 久久精品 人人爱| 韩国女主播一区二区三区| 国产在线看片免费视频在线观看| 少妇精品久久久| 日韩精品第一| 国产激情欧美| 亚洲女同av| 在线亚洲观看| 欧美天堂在线| 国产一区2区| 久久香蕉国产| 麻豆成人在线| 国产亚洲精品美女久久久久久久久久| 99re国产精品| 久久亚洲风情| 国产精品成人一区二区网站软件| 中文字幕一区二区三区四区久久| 99国产精品99久久久久久粉嫩| 91成人精品观看| 国产欧美日韩精品高清二区综合区| 久久一区二区三区喷水| 美女福利一区二区三区| 9久re热视频在线精品| 亚洲久久视频| 精品一区二区三区中文字幕在线| 亚洲三级在线| 国产精品日韩精品中文字幕| 成人亚洲一区二区| 99热精品在线观看| 国产日韩亚洲欧美精品| 国产v综合v| 日韩在线观看一区二区三区| 精品少妇一区| 中文精品在线| 国产精品chinese| 999精品在线| 日韩精品91亚洲二区在线观看| 麻豆9191精品国产| 日韩精品一区二区三区免费视频| 国产一区日韩欧美| 国产 日韩 欧美 综合 一区| 久久久天天操| 日韩精品亚洲aⅴ在线影院| 精品久久一区| 男女性色大片免费观看一区二区 | 欧美一级鲁丝片| 国产亚洲激情| 日韩一级网站| 日韩精品中文字幕吗一区二区| 亚洲深夜福利| 久久99精品久久久野外观看| 宅男噜噜噜66国产日韩在线观看| 尤物精品在线| 国产精品三级| 亚洲激情久久| 精品三级在线| 日本午夜精品一区二区三区电影 |