2017-06-05 99 views
0

我使用几个Hazelcast群集用于不同的目的,并且不希望它们进行交互,因此使用了不同的群集组。我编写了一个简单的监视器应用程序来跟踪每个群集的成员,但想知道是否有方法确定哪些群集组可以访问?监视器作为客户端连接,并且我必须在应用程序配置中硬编码群集组名称,以便它可以尝试与每个群集创建连接。对于目前只有两个群组的情况,这很好,但随着我的用法扩展,如果我可以通过编程确定所有可用于连接的群集,这会有所帮助 - 这可能吗?发现Hazelcast群集组

谢谢

回答

0

组名称是群集的凭据。除非你知道这个名字,否则你将无法连接到它。
我们有一个类似的用例,它通过维护组名列表的属性并循环遍历它们来检查连接。这要求您有一个共同的组密码或从其他来源检索相应的密码。

+0

谢谢 - 我尽管这很可能的情况下 –

0

可能的解决方案: 使用不同的配置实例化两个客户端,一个配置为cluster1,另一个配置为cluster2。将客户端生命周期侦听器附加到每个客户端。查找CLIENT_DISCONNECTED和CLIENT_CONNECTED事件。

+0

谢谢,但仍需要在你的应用程序知道所有可能的组名是 - 我希望能够从Hazelcast中检索所有可定位组的列表 –

+0

没有这样的API来获取环境中所有群集的列表。但是,无论如何,这是一个必须为每个集群设置的配置。如果您有权访问config xmls,则可以解析所有xmls以获取组名列表。顺便说一下,组名是安全配置的一部分。 –

相关问题