3

いくつかのかなり集中的なハードウェアを駆動する基礎となる C アプリケーションがあります。私は現在、デバイスの Web インターフェイスを設計しています。その機能の大部分は、ステータス情報をユーザーに表示することです。そのため、1 秒ごとに Web ページのフィールドを適切な情報 (温度、フレームレート、yada yada...) で更新します。デバイスは Linux を実行し、Apache を備えています。現在のセットアップ:

  1. Web ステータス ページの Javascript が AJAX 呼び出しを行います (setInterval から)
  2. PHP ファイルの実行、FIFOへの書き込み
  3. C アプリケーションはFIFOを読み取り、入力に基づいていくつかの作業を行い (空白である可能性が高く、統計情報を提供するだけです)、FIFOに書き戻します。
  4. FIFOからの PHP ファイルの読み取り、解析、json_encode、echo
  5. Javascript は JSON を解析し、ページを更新します

ここがあなたの出番です...目標は、PHPの仲介者を排除することです。C プログラムへの AJAX 呼び出しの規則 (存在すると仮定) は何ですか? ベストプラクティス?

オプション(私の知る限り):

  • ソケット。C プログラムに特定のポートをリッスンさせます ここに似たようなものがあります。
  • Node.js。私はこれに慣れていません、私はそれを使用したことがありません。しかし、私の短い露出は、これがそれの素晴らしい用途であると思いますか? 私が理解しているように...「サーバー側のjavascript」ですが、実際にはCコードですか?ここで洞察が必要です。
  • CG。cgi は常に実行される C プログラムで動作しますか? それとも、呼び出されたときに C プログラムをゼロからロードしますか?
  • HTML5 ウェブソケット?

任意の洞察をいただければ幸いです。もちろん、最良の答えはおそらく上に挙げたものではないでしょう。それは、この分野に関する私の知識の範囲です。ありがとう!

4

1 に答える 1