<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          FishChat分布式可伸縮 IM 服務(wù)器

          聯(lián)合創(chuàng)作 · 2023-09-30 03:02

          FishChat(魚傳——魚傳尺素),是一款純 golang 編寫優(yōu)秀的即時(shí)通訊軟件(IM), 它集合了市面上已有產(chǎn)品的優(yōu)點(diǎn), 并具備 智能硬件網(wǎng)關(guān)管理(學(xué)習(xí)QQ物聯(lián)思想, 構(gòu)思中)。

          FishChat Android 客戶端見 https://github.com/oikomi/FishChatAndroid (緊張開發(fā)中)

          系統(tǒng)架構(gòu)

          關(guān)鍵服務(wù)器詳解

          gateway

          gateway server主要是接受client請求,進(jìn)行通用的功能設(shè)置,目前這塊只做了分配msg_server的功能,后面可根據(jù)需要進(jìn)行擴(kuò)展

          在gateway server的配置文件中最重要的是配置msg_server列表

          "MsgServerList"      : [
                  "192.168.159.169:19000",
                  "192.168.159.169:19001"
              ],

          msg_server

          msg_server是消息的主體,維護(hù)著客戶端連接和keeplive,同時(shí)要注意router、manager和monitor都訂閱了msg_server的channel

              SYSCTRL_CLIENT_STATUS = "/sysctrl/client-status"
              SYSCTRL_TOPIC_STATUS  = "/sysctrl/topic-status"
              SYSCTRL_TOPIC_SYNC    = "/sysctrl/topic-sync"
              SYSCTRL_SEND          = "/sysctrl/send"
              SYSCTRL_MONITOR       = "/sysctrl/monitor"

          這些channel保證了msg_server在事件觸發(fā)時(shí)會廣播通知后面的router、manager和monitor服務(wù)

          router

          router顧名思義是做了msg_server之間的消息轉(zhuǎn)發(fā)

          manager

          manager主要是管理client信息存儲、離線消息存儲等等,通過它和redis聯(lián)系

          monitor

          monitor主要是收集監(jiān)控各服務(wù)器狀態(tài)信息,目前monitor是可選項(xiàng),可按需要啟動它

          部署

          FishChatServer采用分布式可伸縮部署方式。如果沒有多機(jī)條件,可以單機(jī)部署:

          建議: 單機(jī)測試部署

          • gateway一臺

          • msg_server兩臺

          • router一臺

          • manager一臺

          • monitor一臺

          ./gateway

          ./msg_server -conf_file=msg_server.19001.json

          ./msg_server -conf_file=msg_server.19000.json

          ./router

          ./manager

          ./monitor

          按上面的默認(rèn)啟動方式,查看系統(tǒng)的監(jiān)聽端口如下

          當(dāng)然你可以修改各文件夾下面的json配置文件修改配置參數(shù)

          瀏覽 41
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲毛片在线观看 | 99青青视频 | 成人干片网 | 国产午夜精品电影 | 天天操狠狠撸 |