1. 程式人生 > >MQTT---HiveMQ原始碼詳解(十八)Cluster-kryo與Serializer

MQTT---HiveMQ原始碼詳解(十八)Cluster-kryo與Serializer

MQTT交流群:221405150

既然是Cluster,node之間肯定是需要互動的,那麼肯定是需要序列化和反序列化,HiveMQ是採用kryo來進行序列化的,具體為什麼採用kryo後續我們可以專門寫一篇部落格來進行詳細分析,這裡就不做過多的說明了,總體來說有框架處理,那麼程式碼相對來說就會比較簡單,如果單就使用來說,用起來就會相當簡單。

類圖

這裡寫圖片描述

如上類相對來說比較多,但大家可以通過類名來歸類整理,就會發現其實相當簡單,比上一章來說簡單不止好幾倍,這裡只需要說三個/種類即可。

  • KryoProvider,Kryo的提供者,將所有需要序列化/反序列化的型別進行註冊,指定對應的Serializer進行具體操作即可。

  • SerializationService提供序列化介面,其介面無外乎就這麼兩個個:deserialize/serialize,然後再加上一些過載的方便呼叫的deserialize/serialize方法。

  • Serializer就是具體的序列化反序列化,實現com.esotericsoftware.kryo.Serializer介面處理即可。

相對來說本章節比較簡單,就不做過多的介紹了。