服務概述


服務模組(Serv)是一套基於NIO實現的通訊服務框架,提供TCP、UDP協定的客戶端與服務端封裝,靈活的訊息監聽與訊息內容編/解碼,簡約的設定使二次開發更加便捷;
同時預設提供斷線重連、鏈路維護(心跳)等服務支持,您只需了解業務即可輕鬆完成開發工作。

Maven套件依賴

<dependency>
    <groupId>net.ymate.platform</groupId>
    <artifactId>ymate-platform-serv</artifactId>
    <version>2.0-SNAPSHOT</version>
</dependency>

#註:在專案的pom. xml中加入上述配置,該模組已預設引入核心包依賴,無需重複配置。

基礎概念

會話(Session)

用於客戶端與服務端之間連接狀態的維護和訊息發送的物件;

編/解碼器(Codec)

目前提供以下兩種編/解碼器,開發者可透過實作ICodec介面自行擴充;

  • NioStringCodec:採用位元組byte[4]作為訊息頭,用於記錄訊息體長度的字串訊息編/解碼器;

  • TextLineCodec:用於解析以回車換行符(\r\n)做為訊息結束標誌的字串訊息的編/解碼器;

內建服務(Service)

目前提供以下兩種內建服務,更多服務在不斷完善中...;

  • IHeartbeatService:內建連結維護(心跳)服務,該服務將在與服務端成功建立連線後按參數配置的時間間隔向服務端發送心跳訊息(心跳訊息內容默認為0字符,心跳訊息內容可以透過自訂參數heartbeat_message設定);

  • IReconnectService:內建斷線重連服務,當服務的連線狀態異常時將嘗試重新與服務端建立連線;