繁体   English   中英

Google App Engine与Google Container Engine与Google Compute

[英]Google App Engine vs Google Container Engine vs Google Compute

我有以下几种常见情况,但我不确定哪种Google云工具最适合。 我是Google Cloud的新手。

我有一个过程(收集器),它每N分钟从生产者那里收集一次数据,并将其合并到数据库中。 数据已发布,但从某种意义上讲是瞬态的,即如果收集器在短时间内没有收集到数据,则它将丢失。 收集器是一个运行24/7的后台进程,并具有用于诊断的终端日志记录界面。 目前,收集器以python脚本的形式在服务器/ PC上运行,但我想将其移至云中。 但是,我不确定是否需要将此脚本部署为Google App Engine上的google app或Container Engine上的docker容器,还是仅在Compute Engine节点上运行它。

编辑:

我已经完成研究,并将脚本部署在Google App Engine上。 但是,我的理解是App Engine可能会运行该应用程序的多个实例以根据使用情况扩展规模,并且它确实做到了。 但是,我不会在数据库中得到重复的条目,如果我刚巧在笔记本电脑上启动脚本的多个实例,那将是我期望的。

有很多方法可以给这只猫敲钟。

使用kubenaty显然很容易,但是,为此您不必使用container-engine(可能过于昂贵)。

如果您有一个compute-instance,其中包含侦听pub-sub的脚本,则可以通过创建实例模板来水平扩展它,并选择根据处理器使用情况自动扩展。

无论选择哪种方式,记录的重复性都与发布者而不是订阅者(您的python脚本)联系在一起

即使您可以轻松地在GAE中完成应用程序引擎,我也永远不会使用它,但应该只在前端角色恕我直言中使用它

GAE导向的答案。

理论上,缺少重复的数据库条目可能是由于:

  • 一个经过深思熟虑的实现,专门用于防止此类重复,无论运行多少GAE实例:)
  • 意外-只是因为您到目前为止没有看到它们,并不表示它们将来不会出现。

通过使用max_instances配置设置为1的基本扩展,可以防止多个GAE实例并行执行。从扩展类型和实例类

基本缩放

具有基本扩展功能的服务将在应用程序收到请求时创建一个实例。 当应用程序变得空闲时,实例将被关闭。 基本缩放是间歇性或由用户活动驱动的工作的理想选择。

以及表格中的缩放列:

缩放

通过在basic_scaling设置的max_instances参数中设置最大实例数,可以配置具有基本扩展的服务。 活动实例的数量与处理量成比例。

另请参见缩放元素

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM