問題タブ [unix-socket]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JDBC の TCP/IP オーバーヘッドを回避するために、Java を使用した MySql への Unix ソケット接続は?
JDBC の TCP/IP オーバーヘッドを回避するために、Java を使用して MySql への Unix ソケット接続を作成することは可能ですか?
これを可能にするライブラリ(またはおそらくいくつかのライブラリ)を知っている人はいますか?
java - Java の UNIX ドメインソケット
これらのスレッドが表示されます Java の UNIX ソケットの実装ですか? およびhttp://forums.sun.com/thread.jspa?threadID=713266。
2 番目のリンクは、Java がすでに UNIX ドメイン ソケットをサポートしていることを示しています。それが本当なら、Java からどのクラスを実装する必要がありますか?
最初のリンクから、Java は UNIX Domain Socket をサポートしていないと書かれています。UNIX ドメイン ソケットが必要な場合は、サードパーティのライブラリを使用する必要があります。
それで、それはどれですか?
linux - ZeroMQ:誰かがUnixドメインソケットの背後でリッスンしているかどうかを確認します
コンテキスト:Linux(Ubuntu)、C、ZeroMQ
ipc://
SUB ZeroMQソケット(物理的にはUnixドメインソケット)でリッスンするサーバーがあります。
ソケットに接続し、そのメッセージを公開して切断する必要があるクライアントがあります。
問題:サーバーが強制終了された場合(または不自然に停止した場合)、ソケットファイルはそのまま残ります。クライアントがこの古いソケットに接続しようとすると、でブロックされzmq_term()
ます。
サーバーが存在しない場合にクライアントがブロックされないようにする必要がありますが、サーバーが稼働しているがビジー状態の場合は配信を保証します。
外部の魔法(PIDファイルのチェックなど)によってサーバーの存続期間を追跡できないと仮定します。
ヒントはありますか?
java - Java / ScalaのUnixドメインソケットを使用するにはどうすればよいですか?
ScalaのUnixドメインソケットを使用する最良の方法は何ですか?
JUDSというJavaライブラリを見つけましたが、ソケットを介してファイル記述子を送信できないようです。そもそもUnixドメインソケットを使用したい理由です。
JUDSのreadmeは、J-BUDSと呼ばれる競合するライブラリを参照していますが、これはどこにも見つかりません。
この機能を自分でJUDSに追加することもできますが、ホイールがすでに他の場所のjarファイルにある場合は、ホイールを再発明したくありません。
c - Unix ネットワーキング プログラミング
サーバー内のファイルからクライアントにデータを送信するクライアントサーバープログラムを作成しました。これで、サーバーが実行されていない場合、クライアントが無期限に待機することは望ましくありません。このために、私は SELECT システム コールを使用しています。このシステム コールでは、引数としてタイミングを指定できます。これにより、サーバーがその時間内にデータを送信するのを待つようにクライアントに指示できます。問題は、そのデータのみを送信していることです。秒数 ( select() で指定)。実際の作業は行っていません..注:-UDP接続を使用しています。
誰でもこの問題を解決できますか??
python - AF_UNIX ソケットで動作する python asyncore の問題
AF_UNIX ソケットで非同期コアを使用すると問題が発生します。このコード
コードを実行すると
すぐに終了し、読み取りと書き込みを待ちません。コードを変更して writable() メソッドを強制的に常に返すようFalse
にすると、入力を正しく待機し、このように socat と通信できます
ただし、読み取り専用です (writable() が を返すため、書き込みは論理的に機能しませんFalse
)。私のコードにエラーがありますか、それとも asyncore/select() で AF_UNIX ソケットを管理できませんか?
unix - ファイルシステムを使用しない Unix での 0-copy プロセス間通信
2 つのプロセス間で適度な量のメモリを移動する必要がある場合は、次のようにします。
- 書き込み用のファイルを作成する
- ftruncate を目的のサイズに
- mmap してリンクを解除する
- 必要に応じて使用する
別のプロセスがそのデータを必要とする場合、次のことを行います。
- UNIXソケットを介して最初のプロセスに接続します
- 最初のプロセスは、UNIX ソケット メッセージを介してファイルの fd を送信します。
- fdをmmapする
- 必要に応じて使用する
これにより、コピーなしでプロセス間でメモリを移動できますが、作成されるファイルはメモリにマウントされたファイルシステム上にある必要があります。そうしないと、ディスク ヒットが発生し、パフォーマンスが低下する可能性があります。ファイルシステムを使わずにそのようなことをする方法はありますか? ポインターとともに fd を返す malloc のような関数がそれを行います。
[編集] ファイル記述子を持つことで、カーネルによって維持される参照カウント メカニズムも提供されます。
python - ドメイン ソケットを使用する Python 互換の分散メッセージング/タスク システム (Celery など)
UNIXドメインソケットで動作するCeleryのようなものはありますか? 私の現在のホスト (dreamhost) は、IP ソケットをリッスンするサーバーの実行を禁止しているため、ドメイン ソケットで動作するものが必要です。
明らかに、より簡単な解決策が好まれますが、Python クライアント ライブラリとドメイン ソケット サポートを備えたメッセージ キューイング ソフトウェアであれば何でも構いません。
c - エラー : 「トランスポート エンドポイントは既に接続されています」
Cで小さなチャットサーバーを開発しようとしています.
単純なチャット サーバーの場合、
- (トランスポート エンドポイント) === (ソケット) ?
- クライアントごとに 1 つのソケットを使用する必要がありますか? または、複数のクライアントでソケットを再利用できますか? もしそうなら、どのように?
- これを行う標準的な方法はありますか?
- 利用可能な良い参考文献はありますか?
いくつかのサンプル実装を見ることができますか? この課題には gcc コンパイラと C 言語を使用する必要があります。
c - SOCK_DGRAM で双方向の UNIX ドメインソケットを作成するには?
シンプルな Unix データグラム サーバー/クライアントを作成しようとしていますが、いくつか問題があります。私が欲しいのは、データグラムソケットをリッスンし、受信したすべてのメッセージに返信を元の送信者に送信するサーバーです。最初に「サーバー」として使用し、クライアントを C で記述してみることにしsocat
ました。次のように socat を実行しています。
私の理解の範囲では、これは/tmp/test.socket
同じ文字列で受信したものすべてに耳を傾けて返信する必要がありますか? 次に、次のようなクライアント プログラムがあります (わかりやすくするためにエラー チェックを削除しています)。
パケットを送信し (動作します)、パケットを受信してから出力する必要がありますが、プログラムはパケットを受信できないようです。ここで何が間違っているのでしょうか、それとも Unix ソケットについて根本的な誤解がありますか? ありがとう!