私はC ++でプログラムを書いています。プログラムを制御するためのWebインターフェイスが必要で、効率的で最適なプログラミング言語です...
7 に答える
アプリケーションは、Web アプリケーションが送信するネットワークからのメッセージをリッスンするだけで済みます。
任意の Web アプリケーション (言語に関係なく) の実装でソケットを使用できるため、詳細について心配する必要はありません。プロトコルを作成したメッセージをアプリケーションが管理することを確認してください。
ここで、すべてを C++ のままにしたい場合は、Web アプリケーションに CPPCMS を使用できます。
Windows の場合は、プログラムに COM コンポーネントを登録することをお勧めします。少なくとも ASP.NET からは簡単にアクセスできます。
localhost ソケット接続を介した読み取り/書き込みなど、メモリ内交換手法を試すことができます。ただし、最初に交換プロトコルを設計する必要があります。
またはデータベースを介したデータ交換。データベースからデータを読み書きするプログラムを作成すると、Web フロントエンドがデータベースにデータを読み書きします。
Thriftのようなフレームワークを使用して、PHP/Python/Ruby/その他の Web アプリケーションと C++ デーモンの間で通信することもできますし、さらに一歩進んで (Thrift のようなものを使用するよりも難しいかもしれません)、スクリプト言語用の言語バインディングを作成することもできます。お好みの。
2 つのオプションのいずれかを使用すると、C++ の「重労働」を維持しながら、タスクにより適した言語で Web 向けのコードを作成できます。
あなたはWtを見ましたか?これは、Web アプリケーション用のウィジェット中心の C++ フレームワークであり、堅牢な MVC システム、ORM などを備えています。
これは見た目ほど単純ではありません!
C ++プログラム(おそらく長時間実行されているのに、なぜ制御が必要なのか)と、http要求を受信すると起動し、応答が送信されると終了する一般的なWebプログラムとの間に不一致があります。
長時間実行されるタスクを実行できるJavaベースのWebサーバーの1つを使用できる可能性があります。
または、データベースまたはその他のストレージを通信媒体として使用することもできます。-プログラムは定期的に現在のステータスを既知のテーブルに書き込み、ユーザーが制御アプリケーションを呼び出すと、現在のステータスを読み取り、ユーザーに適切なオプションのセットを提供します。これはDBに保存され、次にリクエストをポーリングするときにプログラムによってアクションが実行されます。
キューイングメカニズムを使用できる場合は、ポーリングではなくイベント駆動型にすることができるため、これはより適切に機能します。
PHPに行く:)このプログラム実行関数を見てください
Win32 API メソッド。
MSDN - Winsock 入門:
http://msdn.microsoft.com/en-us/library/ms738545%28v=VS.85%29.aspx
(OS が指定されていないため、Windows であると想定しています)