2012-10-16 59 views
0

我有一個3臺電腦的小型網絡。第二臺計算機上有一個C++程序,它在第一臺計算機發送數據時從網絡接口讀取數據包。我需要從第三臺電腦運行。我寫了使用flaskPython:系統函數太慢了嗎?

import os 
from flask import Flask 
app = Flask(__name__) 

@app.route("/") 
def hello(): 
    os.system("./a.out &") 

if __name__ == "__main__": 
    app.run(host='0.0.0.0') 

的問題是,似乎有一個小的延遲,而開始使用os.system()可執行文件和第二計算機錯過一些數據包小python腳本。有沒有辦法加快這一點?

回答

2

我強烈建議使用某種隊列。調用系統函數的高級Web服務器的性能可能無法預測(根據機器的繁忙程度等)。

如果您在後臺讀取進程,進行數據包的通信和排隊以及隊列中的Web端點讀取,將是最可靠的解決方案。

+0

我不確定我是否理解你。網絡服務器在內部維護一個隊列。你的意思是我應該在我的Python腳本中有一個隊列嗎?這將如何幫助? –