gpt4 book ai didi

python - 如何实现在单独的python进程之间共享的队列系统?

转载 作者:行者123 更新时间:2023-11-30 22:51:01 25 4
gpt4 key购买 nike

我们有一个 python 脚本,当用户在 Web 表单中输入一些数据后,该脚本就会启动。整个脚本需要 10-20 分钟才能完成。从技术上讲,如果用户愿意,可以在 10 秒内启动其中的 10 个。如果发生这种情况,我们将同时运行 10 个相同的 python 脚本,并由于脚本正在处理的各种事情而导致彼此失败。

编写总体排队系统以便这些脚本相互了解并排队等待执行的首选方法是什么?我们是通常编写一次性脚本的人,但需要为 Web 表单建立这种持续的排队系统......遗憾的是我们不是开发人员或没有这种背景。

我们也对构建解决方案的不同方式持开放态度。我们一起进行了黑客攻击。我们从未创建过流程/服务代理/工作人员,但这在这里可能有意义吗?

人们通常如何做这些事情?

最佳答案

欢迎来到分布式计算的狂野世界!

实现你自己的排队系统(即使是用Python)可能会导致一个痛苦的世界。 RabbitMQ 是一个非常流行的企业级开源消息队列应用程序。他们有一个 great starter tutorial其中讨论了您可以开始配置它的方法及其使用示例。

此外,还有一个名为 Celery 的 Python 任务队列库,因此在底层使用了 RabbitMQ。它的焦点和功能稍小一些,但作为权衡,它提供了易于使用和更快的启动时间。它没有权衡的一件事是 RabbitMQ 的一致性,当您深入研究队列和分布式系统时,您将了解到这一点极其重要。可以找到入门文档 here

链接:

关于python - 如何实现在单独的python进程之间共享的队列系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39132981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com