6

所以,事情就是这样。我真的很喜欢微服务的想法,并且想在决定是否在生产中使用它之前对其进行设置和测试。然后,如果我确实想使用它,我想慢慢消除旧 Rails 应用程序的碎片并将逻辑转移到微服务中。我认为我可以使用 HAProxy 并根据 URL 设置不同的路由。所以这应该被覆盖。

然后我的下一个最大担忧是我不希望有太多开销来确保基础设施方面的一切顺利运行。我想要最好的低配置和易于开发、测试和部署。

现在,我想知道每种样式的优缺点是什么。Akka(集群)与 Kubernetes 之类的东西(甚至可能是 fabric8)。

我还担心的是容错。我不知道您如何使用 Kubernetes 做到这一点。然后您是否必须包含一些消息队列以确保您的消息不会丢失?如果其中一个队列出现故障,那么还有多个队列?或者只是重试直到队列再次出现?Akka 演员已经拥有这样的权利?重试和邮箱?微服务的容错策略有哪些?它们是否因每种方法而异?

有人请赐教!;)

4

1 回答 1

1

我对Akka了解不多,但是快速阅读似乎它是一个应用程序框架。Kubernetes 处于较低级别。Kubernetes 运行您的容器并为您管理它们。我们没有队列或邮箱的概念。

Kubernetes 很快就会有 L7 负载平衡,所以你可以做 URL 映射。

至于容错——kubernetes 确保你陈述的意图是真实的——运行这个容器的 N 个副本。该容器可能是 Akka 应用程序,也可能是 mysql - 无关紧要。

Docker + Akka 上有很多指南。Kubernetes 使管理 docker 容器变得更容易,但应用程序仍然是你的 :)

于 2015-09-18T21:23:54.987 回答