2

サーバー上の関数/プログラムを呼び出すための単純なクライアントからサーバーへのインターフェイスをセットアップしようとしています。クライアントは、そのようなコマンドをリッスンしているサーバーに単純なコマンドを送信します。サーバーがクライアントからコマンドを受信すると、サーバー上で次の関数またはプログラムを実行します。テキスト文字列を受信し、その文字列を解析してから、関数または外部プログラムを実行する単純な TCP サーバーを調べました。ねじれたサーバーで実装された XML-RPC の使用についても調べました。

私が尋ねているのは、セットアップが最も簡単な方法はどれか、またはこのタスクを簡単に実行する他の方法はありますか?

ありがとう。

4

3 に答える 3

0

いくつかの長所と短所を備えた要件を達成する方法は複数あります。

  • Python 低レベル ソケット

標準の Python ソケット ライブラリと CLIET サーバー アーキテクチャの使用

  • Telnet/SSh などのプロトコルを介してサーバーに接続し、コードをトリガーします。

Telnet/ssh や Subprocess などの Python ライブラリを使用します。

  • XML-RPC

ここで説明されているように XMP RPC リクエストを送信するhttp://docs.python.org/2/library/xmlrpclib.html

私の意見では、リモート メソッド トリガーを実現する最も簡単な方法は、Python サブプロセス モジュールを使用することです。私は通常、一般的な目的のために次のような構文を使用します。

import subprocess

ret = subprocess.call(["ssh", "user@host", "program"]);

# or, with stderr:
prog = subprocess.Popen(["ssh", "user@host", "program"], stderr=subprocess.PIPE)
errdata = prog.communicate()[1]

それが役に立てば幸い

于 2013-12-28T10:51:39.443 に答える
0

あなたの場合に適用できる場合は、 Celery のような非同期/リモートジョブの実行にフル機能のシステムを使用できます?

于 2013-09-11T18:58:08.300 に答える