我们将在GitHub上启动一个开源项目。
我们将为此使用 Microservices Architecture ,并且将使用的语言为 Java
我们将在Java中使用 Java中的 Google Cloud终结点 。
几乎有 12 个服务可以共同构成一个大型API。
每个服务都提供自己的API,该API是在cloud endpoints
中创建的,但是某些服务需要相互通信才能正常运行。
我们有一个问题,我们目前无法确定哪种方式最适合这种情况。 AppEngine标准还是Khubernetes(容器引擎)?
我们就 Google Cloud Platform 进行了许多演示,它们决定了这一点,但无法决定。您能告诉我哪个对这个有好处,为什么。这个项目进行了很长时间。
答案 0 :(得分:1)
如果您的应用程序在容器中运行,我可能会选择Kubernetes
,但决定可能会因您的用例而异。
如果您不怕处理基础结构,并且想定义自己的资源,规则等,那么Kubernetes
提供了更大的灵活性。
您几乎可以在一个YAML文件中定义整个应用程序堆栈,以防万一Google Cloud Platform
对您来说不是最佳解决方案,您可以轻松地将Kubernetes
集群旋转到其他位置。
AppEngine
基本上是PaaS解决方案,专注于应用程序开发,您可以在其中将大多数基础架构决策委托给Google。您可以以最小的麻烦使应用程序运行和扩展。
要考虑的其他方面之一也是定价。看一下GCP price calculator。可能会发现,如果您有多种服务,Kubernetes
会便宜得多(相对于每个GAE
应用程序,您都可以在一个群集中运行它们)。