HazelCast节点加入集群以及由此引出的思考

HazelCast是一个分布式的数据网格系统。HazelCast有一个重要的功能就是集群管理,它可以自动进行节点发现,并将其加入集群,也支持节点去除,而且提供了api供我们使用,因此我们可以使用其内部的api来进行集群管理和配置。

HazelCast有三种组网协议,MultiCast,TcpIp以及Aws三种,API默认使用MultiCast协议来组网,但是前提是网络环境需要支持MultiCast协议,另外如果集群机器比较多或者不支持MultiCast协议就可以选用TcpIp来组网,另外HazelCast还提供了Aws云方式来进行组网。

简单的HazelCast引入方案:


本例中使用的是TcpIp的组网方式,可以tcpip可以指定加入的机器成员,这样不同环境发布的时候就可以加入不同环境的机器。如果使用MultiCast组网的话,就可以通过指定不同环境的GroupConfig对应不同的名字和密码来组网。这样就可以解决不同环境的组网问题。

思考:HazelCast提供了使用Aws云来组网的方式,我们可以将其当成一个第三方的注册中心。那么问题来了,既然可以支持第三方注入,那么我们是否可以自己写一个呢,例如zookeeper,redis等都可以。答案应该是可以的。翻了下代码,假如增加redis注册,我们可以将Redis的注册地址,端口,密码保存进来,然后重写HazelCast Cluster Config相关的代码,增加RedisConfig,并写相关的ClusterService适配即可。

@程序员,@IT互联网

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容