首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询Kubernetes中的远程状态存储(交互式查询)

查询Kubernetes中的远程状态存储(交互式查询)
EN

Stack Overflow用户
提问于 2020-04-17 23:52:14
回答 1查看 464关注 0票数 1

是否有关于在部署在Kubernetes中的应用程序实例之间查询远程状态存储的建议?我们的应用程序实例部署有2个或更多副本。

基于文档的https://kafka.apache.org/10/documentation/streams/developer-guide/interactive-queries.html#id7

代码语言:javascript
复制
streams.allMetadataForStore("word-count")
    .stream()
    .map(streamsMetadata -> {
        // Construct the (fictituous) full endpoint URL to query the current remote application instance
        String url = "http://" + streamsMetadata.host() + ":" + streamsMetadata.port() + "/word-count/alice";
        // Read and return the count for 'alice', if any.
        return http.getLong(url);
    })
    .filter(s -> s != null)
    .findFirst();

streamsMetadata.host()是否会导致POD IP?如果是的话,从这个吊舱到另一个舱的呼叫会被允许吗?这是正确的做法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-18 22:44:23

streamsMetadata.host()

此方法返回通过application.server配置参数配置的任何内容。也就是说,每个应用程序实例(在您的例子中,每个POD)都必须设置此配置,以提供如何访问它的信息(例如,它的IP和端口)。Kafka流将此信息分发给所有应用程序实例。

您还需要相应地配置您的荚,以允许通过指定的端口发送/接收查询请求。这部分是你需要自己编写的额外代码,也就是某种“查询路由层”。Kafka Streams只有内置支持来查询本地状态,并分发关于哪个状态托管在哪里的元数据;但是不提供内置的remove查询支持。

查询路由层的示例实现(WordCountInteractiveQueries)可以在Github:https://github.com/confluentinc/kafka-streams-examples上找到。

我还建议查看文档和博客文章:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61282495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档