我有4個系統,其中一個我用作主站,其餘3個用作從站。我想在客戶端系統中執行一組函數並取回結果,爲了實現這一點,我以前使用過並行Python,不幸只要在其中創建job_server,它就會在內部使用所有系統執行給定函數。我想單獨分配一個特定的函數在單個客戶端機器上執行,我不知道如何繼續編碼。 python中是否有框架,允許用戶這樣做?如何使用python將作業安排到客戶端系統?
2
A
回答
1
有multiprocessing
模塊:http://docs.python.org/library/multiprocessing.html 您可以在那裏找到您想要的實例(請參閱Remote Managers)。
作爲一個方面的通知:我很快就偶然發現了multiprocessing
模塊的限制,現在使用PyRo作爲中間件。它非常簡單和強大,但需要更多的工作來建立一個基本框架。
1
在過去幾年中,Pycon曾經談論過一個通過ssh管理遠程進程的工具,聽起來非常酷,我打算退房。我已經忘記了這個工具是什麼,但你可以通過查看過去幾年的Pycon會談來找到它。
Python Parallel Processing wiki page有很多工具可以幫助你。
1
我不完全明白你現在擁有什麼和你想要做什麼。 Pyro易於使用,速度非常快,並且可以讓多個python進程(在多個系統上)相互交互。看看那個。你需要確保所有的東西都在運行,所以他們正在監聽命令,但這並不難。
1
在Pythomnic你可以在多臺服務器交換同步調用像這樣多個進程:
result = pmnc("other_process").module.method(...) # invokes remote method
所以你eiher可以有3個明顯的命名奴隸和手工採摘通話對象:
pmnc("slave_1").foo.bar() # calls bar() in foo.py on slave_1
或有同名的奴隸,並有框架選擇任何可用的(如果它們當然可以互換)
pmnc("slave").foo.bar() # calls bar() in foo.py on any slave
1
退房RPyc
相關問題
- 1. 使用VirtualBox直接將端口轉發到客戶操作系統
- 2. 如何提高客戶端 - 服務器系統的安全性?
- 3. 如何在嵌入式系統中使用REST客戶端API
- 4. 允許按日期安排作業的任何作業隊列系統?
- 5. Python庫socketIO客戶端不能在操作系統中使用X
- 6. 如何在客戶端系統中製作事件
- 7. 如何通過PHP和Javascript知道客戶端操作系統?
- 8. 使用IP地址連接到客戶端系統
- 9. 應富客戶端拱在多級企業系統
- 10. 如何統計客戶端引用的客戶端數
- 11. 如何使用kubernetes python客戶端來排除節點?
- 12. 如何將ALV佈局變體從一個客戶端複製到同一系統中的其他客戶端?
- 13. 如何構建允許用戶將作業提交到隊列的系統
- 14. 如何使用c下載服務器文件到客戶端系統#
- 15. 如何將此客戶端作爲多線程客戶端?
- 16. 是否有可能爲Android創建一個「客戶端到客戶端」系統?
- 17. java訪問客戶端文件系統
- 18. 訪問客戶端文件系統
- 19. 客戶端系統詳細信息
- 20. 如何在客戶系統上安裝Qt應用程序?
- 21. 系統ID和客戶端更改管理系統別名
- 22. 如何從服務器系統啓動客戶端系統的Windows服務?
- 23. 如何使用PHP調用客戶端系統中的dll文件?
- 24. Rails gem用於瀏覽客戶端用戶的文件系統
- 25. 系統python與用戶python
- 26. 在客戶端使用nodejs文件系統模塊
- 27. 使用小程序在客戶端系統上寫入文件
- 28. 客戶端文件上傳使用cfs文件系統
- 29. 客戶端系統主機名是使用
- 30. 如何在客戶端的瀏覽器/操作系統/系統上遠程調試jQuery應用程序?
像ParallelPython並代表用戶的一切,它使艱難的齧合定製,在所有客戶端系統正在執行一個功能良好的工具,也沒有規定,我可以手動assgn每個作業到每個客戶端節點,正如你所提到的,必須從客戶端收聽,我如何去建設它。 – Rahul 2011-02-08 17:35:18