MQTT---HiveMQ源码详解(十八)Cluster-kry
2017-10-22 本文已影响16人
西安PP
既然是Cluster,node之间肯定是需要交互的,那么肯定是需要序列化和反序列化,HiveMQ是采用kryo来进行序列化的,具体为什么采用kryo后续我们可以专门写一篇博客来进行详细分析,这里就不做过多的说明了,总体来说有框架处理,那么代码相对来说就会比较简单,如果单就使用来说,用起来就会相当简单。
类图
这里写图片描述如上类相对来说比较多,但大家可以通过类名来归类整理,就会发现其实相当简单,比上一章来说简单不止好几倍,这里只需要说三个/种类即可。
-
KryoProvider,Kryo的提供者,将所有需要序列化/反序列化的类型进行注册,指定对应的Serializer进行具体操作即可。
-
SerializationService提供序列化接口,其接口无外乎就这么两个个:deserialize/serialize,然后再加上一些重载的方便调用的deserialize/serialize方法。
-
Serializer就是具体的序列化反序列化,实现com.esotericsoftware.kryo.Serializer接口处理即可。
相对来说本章节比较简单,就不做过多的介绍了。