簡體   English   中英

如何實現在不同的python進程之間共享的隊列系統?

[英]How to implement a queue system that is shared between separate python processes?

我們有一個python腳本,在用戶在Web表單中輸入一些數據后啟動。 整個腳本需要10-20分鍾才能完成。 如果用戶如此選擇,用戶可以在10秒內從技術上啟動其中的10個。 如果發生這種情況,我們將同時運行10個相同的python腳本,並且由於腳本正在處理各種事情而導致彼此失敗。

對總體排隊系統進行編碼的首選方法是什么,以便這些腳本相互了解並排隊等待執行? 我們通常會編寫一個腳本但是需要為Web表單安裝這個不斷排隊的系統......遺憾的是,我們不是開發人員或具有該背景。

我們也傾向於采用不同的方法來構建解決方案。 我們一起進入這個黑客行為。 我們從未創建過程/服務經紀人/工作人員,但這可能在這里有意義嗎?

人們通常如何做這些東西?

歡迎來到分發計算的狂野世界!

實現自己的排隊系統(即使在Python中)可能會導致一個受傷的世界。 RabbitMQ是一個非常流行的企業級和開源消息隊列應用程序。 他們有一個很好的入門教程 ,講述了開始配置它的方法和使用示例。

此外,還有一個名為Celery的Python任務隊列庫,因此使用了RabbitMQ。 它的焦點和功能稍微小一些,但提供易用性和更快的啟動時間作為權衡。 它沒有權衡的一件事是RabbitMQs的一致性 ,當您深入研究排隊和分布式系統時,您將學到非常重要的東西。 可以在這里找到入門文檔

鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM