私はc#(クライアント)とpython(サーバ)が単純なリクエスト - リプライを使って話をすることができました。しかし、私はC#asp.net上に構築されたWebアプリケーションを安定させ、より多くのクライアントとサーバーが必要なので、拡張REQ-REP接続を使用してC#とPythonを接続しようとしました。NetMQ拡張リクエスト - C#とPythonを使用した返信
しかし、以下のコードを実行すると、ブローカーとしての仕事は行われず、何も出力されません。私はここで間違って何をしていますか?
5600 = C#クライアント
5601 =パイソンサーバ
using (var frontend = new RouterSocket("@tcp://127.0.0.1:5600"))
using (var backend = new DealerSocket("@tcp://127.0.0.1:5601"))
{
// Handler for messages coming in to the frontend
frontend.ReceiveReady += (s, p) =>
{
var msg = p.Socket.ReceiveFrameString();
backend.SendFrame(msg); // Relay this message to the backend
};
// Handler for messages coming in to the backend
backend.ReceiveReady += (s, p) =>
{
var msg = p.Socket.ReceiveFrameString();
frontend.SendFrame(msg); // Relay this message to the frontend
};
using (var poller = new NetMQPoller { backend, frontend })
{
// Listen out for events on both sockets and raise events when messages come in
poller.Run();
}
}
あなたが共有したリンクでは、フロントエンドとバックエンドポートを指定するコードがないため、Routher-Dealerのキャプチャソケットの後にnetmqのプロキシを単に追加することができるようです。 – Oleole
私はあなたのコメントを理解していないと思いますが、とにかく私はコード例を追加しました。それは役に立ちますか? – somdoron
代わりにpythonでプロキシを実行することに決めました。あなたの助けを借りてありがとうございます:) – Oleole