日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

通過在云端進行智能邊緣核心設(shè)備的建立、身份制定、策略規(guī)則制定、函數(shù)編寫,然后生成配置文件下發(fā);物聯(lián)網(wǎng)設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計(Session 管理、心跳管理、數(shù)據(jù)上行、數(shù)據(jù)下行)

介紹

物聯(lián)網(wǎng)設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計(Session 管理、心跳管理、數(shù)據(jù)上行、數(shù)據(jù)下行)

物聯(lián)網(wǎng)云平臺設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計 TCP gateway源碼免費分享

 

說明

NioEventLoop 是 Netty 的 Reactor 線程,其角色:

  1. Boss Group:作為服務(wù)端 Acceptor 線程,用于 accept 客戶端鏈接,并轉(zhuǎn)發(fā)給 WorkerGroup 中的線程。
  2. Worker Group:作為 IO 線程,負責 IO 的讀寫,從 SocketChannel 中讀取報文或向 SocketChannel 寫入報文。
  3. Task Queue/Delay Task Queue:作為定時任務(wù)線程,執(zhí)行定時任務(wù),例如鏈路空閑檢測和發(fā)送心跳消息等。
概要說明
  • TcpServer :提供TCP連接服務(wù)
  • TcpSessionManager: 你可以添加監(jiān)聽事件,用于監(jiān)聽TCP會話創(chuàng)建、銷毀等
  • LogSessionListener:一個日志監(jiān)聽器,它和tcpSessionManager關(guān)聯(lián),監(jiān)聽器必須事先 SessionListener
  • TcpSender:TCP發(fā)送者,用戶向客戶端發(fā)送消息通知、實現(xiàn)下行邏輯
  • ServerConfig: TCP 的配置管理類
  • TcpConnector: TCP 容器,用于管理服務(wù)和客戶端的連接
  • NotifyProxy: 發(fā)送通知到代理類

以上都是默認配置,你可以不修改,但是你可能需要換個TCP端口

.TCP網(wǎng)關(guān)的網(wǎng)絡(luò)結(jié)構(gòu)

基于Netty構(gòu)建TCP網(wǎng)關(guān)的長連接容器,作為網(wǎng)關(guān)接入層提供服務(wù)API請求調(diào)用。

客戶端通過域名+端口訪問TCP網(wǎng)關(guān),域名不同的運營商對應(yīng)不同的VIP,VIP發(fā)布在LVS上,LVS將請求轉(zhuǎn)發(fā)給后端的HAProxy,再由HAProxy把請求轉(zhuǎn)發(fā)給后端的Netty的IP+Port。

LVS轉(zhuǎn)發(fā)給后端的HAProxy,請求經(jīng)過LVS,但是響應(yīng)是HAProxy直接反饋給客戶端的,這也就是LVS的DR模式。

物聯(lián)網(wǎng)云平臺設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計 TCP gateway源碼免費分享

 

TCP網(wǎng)關(guān)執(zhí)行時序圖

物聯(lián)網(wǎng)云平臺設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計 TCP gateway源碼免費分享

 

其中步驟一至步驟九是 Netty 服務(wù)端的創(chuàng)建時序,步驟十至步驟十三是 TCP 網(wǎng)關(guān)容器創(chuàng)建的時序。

  • 步驟一:創(chuàng)建 ServerBootstrap 實例,ServerBootstrap 是 Netty 服務(wù)端的啟動輔助類。
  • 步驟二:設(shè)置并綁定 Reactor 線程池,EventLoopGroup 是 Netty 的 Reactor 線程池,EventLoop 負責所有注冊到本線程的 Channel。
  • 步驟三:設(shè)置并綁定服務(wù)器 Channel,Netty Server 需要創(chuàng)建 NIOServerSocketChannel 對象。
  • 步驟四:TCP 鏈接建立時創(chuàng)建 ChannelPipeline,ChannelPipeline 本質(zhì)上是一個負責和執(zhí)行 ChannelHandler 的職責鏈。
  • 步驟五:添加并設(shè)置 ChannelHandler,ChannelHandler 串行的加入 ChannelPipeline 中。
  • 步驟六:綁定監(jiān)聽端口并啟動服務(wù)端,將 NioServerSocketChannel 注冊到 Selector 上。
  • 步驟七:Selector 輪訓(xùn),由 EventLoop 負責調(diào)度和執(zhí)行 Selector 輪詢操作。
  • 步驟八:執(zhí)行網(wǎng)絡(luò)請求事件通知,輪詢準備就緒的 Channel,由 EventLoop 執(zhí)行 ChannelPipeline。
  • 步驟九:執(zhí)行 Netty 系統(tǒng)和業(yè)務(wù) ChannelHandler,依次調(diào)度并執(zhí)行 ChannelPipeline 的 ChannelHandler。
  • 步驟十:通過 Proxy 代理調(diào)用后端服務(wù),ChannelRead 事件后,通過發(fā)射調(diào)度后端 Service。
  • 步驟十一:創(chuàng)建 Session,Session 與 Connection 是相互依賴關(guān)系。
  • 步驟十二:創(chuàng)建 Connection,Connection 保存 ChannelHandlerContext。
  • 步驟十三:添加 SessionListener,SessionListener 監(jiān)聽 SessionCreate 和 SessionDestory 等事件。

程序運行案例步驟

物聯(lián)網(wǎng)云平臺設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計 TCP gateway源碼免費分享

 

1.配置本地Host

Window 地址 // C:windowsSystem32driversetchosts

添加 127.0.0.1 iot-open.icloud.com

2.啟動Server

位置: com.ibyte.iot.test.server.TestTcpServer

2.啟動Client

位置: com.ibyte.iot.test.client.TcpClient

先轉(zhuǎn)發(fā) 加關(guān)注,然后私信“網(wǎng)關(guān)”即可免費獲取下載鏈接

如果物聯(lián)網(wǎng)平臺定制開發(fā)請加關(guān)注后私信私聊

 

物聯(lián)網(wǎng)云平臺設(shè)備網(wǎng)關(guān)技術(shù)架構(gòu)設(shè)計 TCP gateway源碼免費分享

 

 

分享到:
標簽:聯(lián)網(wǎng)
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定