node.js - 如何使用 NodeJs 实现 Google App 引擎冗余
问题描述
我有一个关于应用引擎 (GAE) 的 NodeJs 项目。
每当服务调用发生意外崩溃时,NodeJs 必须重新启动(我相信这是正常的),但是,这会使整个服务器在几秒钟内不可用,这可能会影响其他用户。
我正在考虑创建两个服务器实例,这样如果一个实例失败,另一个实例仍然可以处理请求。
但是,我不确定这会带来更多的工作,因为 node js 项目会执行一些初始化程序并安排一些 cron 任务。如果我创建更多实例,chron 任务会被重复吗?
或者在这种环境中管理冗余的最佳方法是什么?
解决方案
要始终运行 2 个实例,请在app.yaml
set中执行此操作
automatic_scaling:
min_instances: 2
https://cloud.google.com/appengine/docs/standard/python/config/appref#scaling_elements
Chron 任务不会重复。
这是获得这种冗余的方法,但它的代价是必须始终为 2 个实例付费
但是,当您实际上遇到“服务调用中的意外崩溃”时会发生什么。这听起来不正常。
推荐阅读
- c++ - 将结构写入二进制文件 C++ 时遇到问题
- c - 将指针转换为左值
- r - 无法在绘图窗口中获得正确的绘图。缺少一个情节。有人可以告诉为什么吗?
- laravel - laravel excel 添加 flash 消息而不是 NoTypeDetectedException
- mysql - 使用自动增量 MYSQL 插入表
- reactjs - 如何从数组中过滤掉对象
- sql - 在生成属于“CS”专业但不属于“EE”专业的所有学生列表时遇到问题
- web-services - IIS 管理器 - 无法启动 W3SVC 并且服务中缺少 IIS 管理员
- html - Outlook 中未继承行高
- r - 如何防止代码检测和提取单词中的模式(例如:我希望在单词 al'one' 中检测到 'one' 而不是 'one')?