我有服务 A 和服务 B 。服务 A 在请求服务 B 时,服务 B 会将请求作为一个任务,并将其状态(执行中,成功,失败等)存放在 Redis 中执行。现在所有服务都在 K8S 上并每个服务有多个副本,
现在的想法是在 Redis 中用副本的 name 作为前缀来区分副本,但是副本重启后该 name 会变化。在不引入新组件的情况下,有什么方案可以解决这些问题吗?
1
jones2000 2021-06-08 22:18:26 +08:00
A,B 有任务关系, 直接 A,B 创建一个路链接, 不就行了, 状态控制都通过这路链接来完成.
再加一个总控系统, A 向总控发出请求需要一个 B 服务的任务,总控从空闲的机器中选出一个机器 B, A 直接向 B 发出来链接让 B 执行任务, 如果 B 执行失败, A 向总控重新发请求换一个机器链接执行. |