0

私は3台のコンピューターを備えた小さなネットワークを持っています。2台目のコンピューターにC++プログラムがあり、最初のコンピューターがデータを送信している間にネットワークインターフェイスからパケットを読み取ります。3台目のコンピューターから実行する必要があります。を使用して小さなPythonスクリプトを作成しましたflask

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()、2番目のコンピューターが一部のパケットを見逃していることです。これをスピードアップする方法はありますか?

4

1 に答える 1

2

ある種のキューの使用を強くお勧めします。システム関数を呼び出す高レベルの Web サーバーのパフォーマンスは、(マシンのビジー状態などに基づいて) 予測できない場合があります。

バックグラウンドで通信を行ってパケットをキューに入れるプロセスがあり、Web エンドポイントがキューから読み取る場合は、最も信頼できるソリューションになります。

于 2012-10-16T08:29:03.333 に答える