首页 > 解决方案 > 如何为 Apache Cassandra 编写自定义 Snitch?

问题描述

我目前正在尝试编写一个新的告密者,对“开箱即用”的 Apache Cassandra 附带的 SimpleSnitch 进行微小的调整和改进。

我目前的目标是,而不是作为 Cassandra 提供的 subsnitches 包装器的预制 Dynamic Snitch,创建我自己的 Snitch,它能够通知 Cassandra 向哪些节点发送请求。大多数告密者只是简单地告知 Cassandra 网络的拓扑结构,而我想告知 Cassandra 要发送到哪个节点以及该节点所在的位置。

我的主要问题是如何让我的告密者以超出请求拓扑数据范围的方式与 Cassandra 交互。例如,我的public String getDatacenter(InetAddress endpoint)函数正在被主动调用,但这是我的程序中唯一被 Cassandra 调用的函数。我希望能够编写一些函数,public String getBestNode()当它请求它时,它会将节点的 IP 返回给 Cassandra。但是,我似乎无法在网上找到任何信息,这些信息为我提供了 Cassandra 要求的覆盖/编写自己的功能。

如果有人有好的 Snitch 写作资源,他们可以链接我,将不胜感激。否则,我会感谢任何人对我的任何建议。

标签: cassandra

解决方案


推荐阅读