簡體   English   中英

隨時向客戶發送消息

[英]Send message to client any moment Netty Io

我有一個基於微服務的體系結構,netty io在spring boot應用程序上運行,當我想向客戶端發送消息時,我必須等待客戶端的消息才能將答復發送給我要發送的消息。 我如何在不等待客戶與我溝通的情況下向客戶發送消息? 我在這一步迷路了。

您可以這樣處理:

  1. 讓客戶端連接到您的服務器
  2. 讓客戶端發送Hello消息(確保是您的客戶端之一)
  3. 在服務器上捕獲消息並在通道上存儲引用(可通過調用ctx.channel()在每個通道處理程序上使用該引用)
  4. 捕獲channelInactive事件以在客戶端斷開連接時刪除引用

除了等待HelloMessage,還可以捕獲channelActive事件,但是每次有人連接到您的偵聽端口時都會觸發該事件,即使它不是您的客戶端之一。 這就是為什么我更喜歡使用“ Hello Message”

現在,您在通道上有了一個引用,可以通過調用channel.writeAndFlush()在需要時發送消息channel.writeAndFlush()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM