0

PHPに裏打ちされたCプログラムを呼び出すRESTAPIがあります。入力に応じて、CプログラムはJSONデータを返し、PHPは出力を読み取り、クライアントに直接送り返します。

コードは基本的に次のとおりです。

$command = $binary . " " . $parameters;
$output = shell_exec($command);
echo $output;

APIを呼び出すたびに、PHPはプログラムを起動し、いくつかの処理を実行して終了します。

Cプログラムをデーモンとして実行し、PHPバックエンドでこのデーモンを呼び出すことで、これをより効率的にしたいと思います。

また、Python Webフレームワークに移行する可能性があるため、クライアント側からクロスプラットフォームの何かが必要です。

私の直感的な反応は、単にソケットを介してそれを行うことです。それ以来、デーモンをどこにでも置くことができます(近い将来、同じWebサーバー上に配置されますが、最終的には移動できます)。しかし、ソケットは十分に効率的ですか、それともより良い方法と考えられる何か他のものがありますか?

4

1 に答える 1

1

C プログラムについて詳しく知らずにこれに答えるのは難しいです。

確認する価値のあることの 1 つは、PHP 拡張機能の作成です。

クロス プラットフォームではありませんが、Python や Ruby に同様の拡張機能を作成できます。拡張部分は実際には C プログラムの小さなスケルトンにすぎず、作成は非常に簡単です。

于 2012-04-17T21:26:54.253 に答える