我有一个工业传感器网络,这个传感器将csv文件上传到谷歌计算引擎中的ubuntu实例,我们每分钟收到至少10个文件,这些文件有30到2000行,有几个值。
我有一个python脚本处理每分钟运行的文件,但有时脚本无法在一分钟内处理所有文件,我将信息发送到mysql数据库(我需要每分钟更新一个仪表板)所以我想在几个实例中运行这个脚本,每个实例处理一个文件。 (我有一个mysql表,我可以控制哪个文件正在处理或尚未处理)
那么如何在不需要运行rsync的情况下共享多个实例之间存储csv文件的磁盘呢?
另外,我没有看到使用谷歌云存储作为选项,因为我需要将文件上传到gcs然后使用gscloud命令行工具同步每个实例中的文件夹。
答案 0 :(得分:0)
我仍然建议您将云存储用作中间版并使用Object Change Notifications。然后,GCS将开始发送文件到达的推送通知。如果您的脚本失败,您将获得指数退避。
在Appengine上运行python脚本来处理推送通知,这样您就可以根据传入文件的频率自动缩放。
关于共享磁盘的问题:如果所有挂载都是READONLY,则可以一次在16个实例上挂载磁盘。安装READWRITE时,只能挂载到1个GCE实例。所以你需要复制你的数据,不管它是什么。