ICoordinatorDiscovery¶
-
class ICoordinatorDiscovery¶
- Header-file:
#include <datasystem/utils/coordinator_discovery.h>
- Namespace:
datasystem
Coordinator 地址发现接口。用户可以实现该接口,并通过
CoordinatorServiceDiscoveryOptions::coordinatorDiscovery注入 Coordinator 地址发现逻辑。公共函数
-
virtual Status GetCoordinators(std::vector<std::string> &serviceList) = 0¶
获取 Coordinator 地址列表。
实现可以在发现操作成功但当前没有候选地址时返回
OK和空列表,具体消费者负责判断空列表 是否可接受。当前CoordinatorServiceDiscovery初始化时拒绝空列表;非空列表只缓存 并使用首个 Coordinator 地址,后续查询不会重新调用该接口。- 参数:
serviceList - 传出参数。Coordinator 地址列表,每个地址的格式为
host:port。
- 返回:
操作结果状态码。
实现示例
class CustomCoordinatorDiscovery : public datasystem::ICoordinatorDiscovery { public: datasystem::Status GetCoordinators(std::vector<std::string> &serviceList) override { serviceList = { "127.0.0.1:31511" }; return datasystem::Status::OK(); } };