python - AWS EC2 连续一个月运行 python 程序
问题描述
我正在用 Python 编写一个程序,该程序需要连续运行 30 天。它连接到一个 MQTT 客户端,并监听多个主题的消息。
我使用了一个运行 Linux AMI 的 EC2 服务器实例,我想知道如何将其设置为在这段时间内持续运行?
我一直在寻找 cronjobs 并每 X 天重新启动一次,但如果可能的话,最好系统应该没有停机时间。
但是,我不确定如何设置它并确保在服务器/程序失败时重新启动脚本。
客户端将通过亚马逊连接到 OpenVPN VPC,然后运行脚本并保持运行。这可以设置吗?
我运行的版本是:
Amazon Linux AMI 2018.03.0.20180811 x86_64 HVM GP2
NAME="Amazon Linux AMI"
VERSION="2018.03"
ID_LIKE="rhel fedora"
VERSION_ID="2018.03"
解决方案
您可以通过使用 Auto Scaling 自动维护所需数量的 EC2 实例来实现此目的。如果实例无响应或未通过健康检查,Auto Scaling 将启动一个新实例。请参阅:https ://docs.aws.amazon.com/autoscaling/ec2/userguide/as-maintain-instance-levels.html
您需要创建系统的 AMI 以用于启动新实例,或者将您的配置放入用户数据脚本中。
推荐阅读
- python - teardown_class 在设置后立即运行
- sql - Postgresql:如何正确计算百分比?
- c - 内存地址的标准单元测试
- sharepoint - 如何使用 PowerAutomate 从 SharePoint 中删除多个文件夹
- javascript - 编写函数 strLetterCount 并返回带有字符后跟计数的新字符串
- vue.js - 如何在织物对象中添加属性
- javascript - 如何通过 PUT 请求将多个条目保存到对象中
- android - 所有 React Native 编译的类文件在哪里?
- javascript - 我需要帮助来找出与我需要的代码的区别,以找出我的代码无法正常工作的原因
- python - Python:从 Pandas 的周数和年份计算一周的开始日期和结束日期