说下现在的使用场景,我们目前有一个需要计算的任务提交给超算上的求解器进行求解计算,在计算的过程中会产生大量的计算结果文件,但是文件过多后续不容易管理,准备改成将数据都追加到一个二进制文件中,在这个过程中,我们需要实时的把计算结果文件进行解析、存储等操作,这个过程是需要实时交互的,所以每次得到结果都需要实时做处理。
这个处理的过程使用的是 celery 完成的,现在的问题是同一个任务我们会推送到同一个队列中去,但是同一个任务会开启多个 worker 进行工作,这就导致可能会出现处理速度不一致、即后处理的任务先完成的可能(简单来说就是不会按照顺序执行),在这种情况下如果我想使用对象存储( COS )的追加上传,就需要保证每次追加上传数据的起始位置的确定的,也就是需要一个一个结果文件才能保证应该从哪个位置进行追加上传。
对于这种场景,想请教下各位大佬有没有什么好的建议?
比如 celery 存不存在什么机制帮助完成这个场景,或者有什么其他的方案完成?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.