既然要考虑为什么使用,那么我们应该从这么几点来去分析这个问题。1、原始需求是什么?2、现有框架/产品。3、对比匹配一个。 原始需求是什么? 功能...
洋洋洒洒两个周,抽了晚上空余时间终于把这个写完了,希望这个能对有兴趣了解一个完整、高可用、高扩展的MQTT Broker是如何运行的朋友有所帮助...
17章中我们讲解了整个HiveMQ的Cluster的原理以及实现方式,值得一提的当然是数据的Replicate,以及当Replicate数据与本...
既然是通讯,底层的通讯协议由JGroup负责,那么上层类似于web项目,需要定义Request/Response。 Request Reques...
既然是Cluster,node之间肯定是需要交互的,那么肯定是需要序列化和反序列化,HiveMQ是采用kryo来进行序列化的,具体为什么采用kr...
Consistent Hashing Ring 基本上只要做Cluster,都会使用到一致性Hash环,具体作用此处就不细讲,我们只了解Hive...
功能 启动时,读取持久化的信息,构建出订阅树 根据可订阅/取消订阅/读取订阅(包括计算出QoS) 类图 既然是一棵树,那么肯定是由一堆Node组...
功能 Cluster/Single Persistence主要是处理如下这些数据信息: client session client sessio...
简介 HiveMQ的Persistence提供配置包括File和Memory,以解决不同场景的不同需求,使用者可以自行配置六种信息的Persis...