我在App Engine(GAE)上有一个NodeJs项目。
每当服务调用中发生意外崩溃时,NodeJ都必须重新启动(我相信这是正常的),但是,这会使整个服务器无法使用几秒钟,这可能会影响其他用户。
我当时正在考虑创建服务器的两个实例,以便如果一个实例失败,另一个实例仍然可以处理请求。
但是,我不确定这会带来更多工作,因为node js项目会执行一些初始化过程并计划一些cron任务。如果我创建更多实例,是否会复制计时任务?
或者在这种环境下管理冗余的最佳方法是什么?
答案 0 :(得分:1)
要始终运行2个实例,请在app.yaml
集
automatic_scaling:
min_instances: 2
https://cloud.google.com/appengine/docs/standard/python/config/appref#scaling_elements
Chron任务将不会重复。
这是拥有这种类型的冗余的方法,但这是以必须始终支付2个实例为代价的
但是,当您实际上遇到“服务呼叫中意外崩溃”时发生了什么。这听起来不正常。