首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用服务发现将具有相同ID的作业分派到同一工作节点

问使用服务发现将具有相同ID的作业分派到同一工作节点
EN

Stack Overflow用户
提问于 2019-08-03 05:52:20
回答 1查看 53关注 0票数 1

(提前为菜鸟的问题道歉;我没有使用DevOps的经验。)

在我最近的项目中,我偶然发现了这个问题,我不知道服务发现工具(如Consul/Istio/等)可以寻址。

我们的用例是这样的:我们有一个想法类似于不一致的VoIP应用程序。用户可以加入语音通道并开始通话。然而,要在同一语音通道中的用户之间转发语音数据包,他们的WebRTC语音连接需要由同一服务器进程处理,以便我们可以在内存中处理和转发语音通道中的所有语音数据包。

为此,我们在语音服务(服务V)前面有一个单独的服务(称为服务X),它接收用户加入通道N的请求,并根据N将服务V中的服务器分配给用户。我们需要保证对于相同的信道N,X总是在V中选择相同的服务器。

我们以一种不可伸缩的方式实现了这一点,只是为了快速构建原型。现在我们想要正确地实现这一点,我想知道像Consul/Istio/等工具是否可以在这种情况下帮助我们。有没有解决这类问题的通用方法?

EN

回答 1

Stack Overflow用户

发布于 2019-08-03 08:04:51

Istio不一定能帮到你,因为它更多的是关于controlling traffic的。例如,进行金丝雀部署或对您的服务应用安全性。引用自docs

DNS Istio不提供

解析。应用程序可以尝试通过使用其选择的平台中存在的DNS服务来解析FQDN,例如kube-dns。

您可以通过DNS for Services and Pods使用标准的Kubernetes服务发现。或者就像你提到的,你可以使用Consul作为服务发现工具,使用Consul的额外好处是,因为它不是特定于Kubernetes的,所以您也可以潜在地用于Kubernetes集群之外的服务或其他Kubernetes集群中的服务。

因为听起来像是你的初始连接来来去去,所以它听起来像是为了让谁加入哪个通道,以及哪个通道与什么后端对话,你需要在某个地方保持状态,比如数据库,或者键值存储。

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

https://stackoverflow.com/questions/57333830

复制
相关文章

相似问题

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