我没有使用AWS或机器人部署进行生产的经验,所以我正在寻找有关最佳实践的一些建议。
该项目是一个简单的Twitter自动化bot,编写为node.js应用程序。目前我在AWS中使用Cloud9来托管它,但我觉得这可能不是最有效的方法。
我需要什么:
我希望尽可能使用AWS来熟悉该平台,但愿意接受任何可以简化工作流程的建议。
部署新机器人的当前工作流程:
到目前为止这很容易,但我不知道它是否实用。感谢任何建议!
答案 0 :(得分:1)
鉴于僵尸程序需要不断运行(即它只能在几分钟内按需旋转,排除AWS Lambda)并且每个用户都需要自己的,我就是这样。 d尝试使用AWS ECS。
您的初始设置将如下所示:
更新僵尸程序只需更新Docker镜像和任务定义,然后重新启动任务,以便他们使用新图像。
您也应该能够使用CloudWatch为您的ECS任务设置logging和监控/报警。
使用情况报告取决于您要报告的确切内容。您可以从CloudWatch事件/指标获得所需的一切,或者您可能希望将容器中的数据发送到某个存储解决方案(RDS,DynamoDB,S3等)。
将前端绑定到机器人取决于机器人的设置方式。例如,如果他们让REST服务器收听特定端口,那么如果他们在ECS上运行,您就可以点击它。