タグ付けされた質問 「socket」

ソケットは、送信側と受信側を持つ抽象的なネットワーク構造です。最近のほとんどのオペレーティングシステム(OS)には、デバイス表現と、ソケットに対応するプログラミングツールがあります。

1
Socket.IO 1.0用のApache 2.4 mod_proxy_wstunnelの構成
mod.proxy_wstunnelを使用して、socket.ioのwebsocket接続をnode.js websocketサーバーにプロキシするようにApache 2.4を設定しようとしています。これはsocket.io 0.9で正常に機能していましたが、1.0リリースではソケットエンドポイントがクエリパラメーターに変更され、現在、正しいプロキシ命令を使用してApacheを構成するのに問題があります。 すべての要求/socket.io/?EIO=N&transport=websocketに転送する必要があります(Nは任意の数字であり、通常は2)ws://localhost:8082/socket.io/が、他のすべての要求をに転送する必要がありますhttp://localhost:8082/socket.io/。 次の構成の両方のバリエーションを試しました。 ProxyPass /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPassReverse /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 。 RewriteRule /socket.io/?EIO=([0-9]+)&transport=websocket ws://localhost:8082/socket.io/ [QSA,P] ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 私はグーグルから、ProxyPassとLocationsがクエリ文字列をターゲットにできないことを収集しましたが、ここに他のオプションはありますか?パスはsocket.ioにハードコーディングされているため、ライブラリ全体をフォークするまでは変更できません。

7
Nginx + php5-fpm =「ファイルが見つかりません」
私はnginx / fpmを使用してサイトをセットアップしている間に壁にぶつかりました。ページに「ファイルが見つかりません」と表示され、nginx error.logに表示されます。 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream 私はnginxとfpmの両方に慣れていないので、そのエラーメッセージは私には何の意味もありません(グーグルマシンさえ助けていない!)。誰もが何が起こっているのかについて光を当てることができますか?
14 nginx  php-fpm  socket 

1
TCPを介してUNIXドメインソケットを直接公開する方法
たとえば、/ var / program / program.cmdなどのUNIXドメインソケットをTCP経由で公開し、ポート12345で使用できるようにします。これをバックグラウンドでフルタイムで実行することもできます。 これを行う最良の方法は何ですか?関連する場合、システムはUbuntu 12.04.2を実行しています。 また、提案されたソリューションでは、ドメインソケットを削除して再作成しても存続しますか? 編集 ここに、受け入れられた回答の結果を初期化スクリプトの形式で示します。https: //github.com/Wirehive/haproxy-remote
13 linux  ubuntu  tcp  socket 

4
Linuxネットワークログを取得する方法は?
数千および数千のユーザーの永続的な接続を受け入れる特定のポートで、Linuxで実行されているJavaサーバーがあります。最近、クライアントはタイムアウトエラーで接続できません。トラフィックが非常に高くなっていると思われますが、実際には、javaログには1秒あたりの接続数が少ないことが示されています。 あまりにも多くの人が同時に試しており、基本的にOSレベルでドロップされているため、Javaプログラムが実際に接続を受け入れる機会を得ることはないと考えられますか?誰かがソケットをヒットしようとしていることを示すことができるLinuxのログのようなものはありますか?

7
「localhost」を使用してMySQLに接続できませんが、「127.0.0.1」を使用しても問題ありませんか?
/ etc / hostsファイルは次のようになります。 127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters サーバーの構築中に、ローカルホストに正常にpingできましたが、Postfix、Apache、Dovecotなどのサービスの特定の構成ファイルで、それらを機能させるために127.0.0.1代わりに指定する必要があることがわかりましたlocalhost。 またlocalhost、MySQLへの接続に使用されていた特定のデータベース駆動型Webサイトの構成ファイルを変更する必要がありました。 私はhostsファイルにさまざまな変更を試みましたが、今まで試したことのあるものは何も役に立ちませんでした。 サーバーはUbuntu 12.04.02 LTSを実行しています。selinuxがインストールされておらず、IPtablesのデフォルトポリシーを受け入れてフラッシュするように設定した後でも上記の状況は残ります。

5
UNIXソケットを使用するようにmemcachedをセットアップする方法は?
Debianでmemcachedを使用してデフォルトの11211ポートを使用できましたが、Unixソケットを設定するのは非常に困難でした。 私が読んだものから、私は作成しmemcache.socketて追加する必要があることを知っています: -s /path/to/memcache.socket -a 0766 /etc/memcached.confし、デフォルトの接続ポートアウトコメントやIP、すなわち -p 11211 -l 127.0.0.1 ただし、me​​mcachedを再起動すると、Drupalサイトで内部サーバーエラーが発生します。 TCP / IPのオーバーヘッドを回避し、memcachedの全体的なパフォーマンスを向上させるためにUNIXソケットを実装しようとしていますが、この調整によってどれだけのパフォーマンスが期待できるかわかりません。 これを解決するためのあなたのヒントまたはおそらく設定に感謝します。
12 memcached  socket 

4
Linuxのソケットの最大数
サーバーは〜32720ソケットに制限されているようです。この制限を引き上げるために、既知の変数の変更をすべて試しました。ただし、空きメモリの4GoとアイドルCPUの80%がまだある場合でも、サーバーは32720のオープンソケットに制限されたままになります。 構成は次のとおりです ~# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 63931 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 798621 pipe size (512 bytes, …

1
mysqlサービスを開始できません[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? サーバー障害のトピックになるように質問を更新します。 3年前休業。 ubuntuサーバーからmysqlサービスを再起動できません。ここにエラーがあります: ● mysql.service - LSB: Start and stop the mysql database server daemon Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled) Active: failed (Result: exit-code) since mer. 2016-06-08 17:31:06 CEST; 54s ago Docs: man:systemd-sysv-generator(8) Process: 4087 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE) juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]: 0 processes …
10 mysql  service  socket 

4
/ proc / sys / net / ipv4 / tcp_tw_reuseの値を変更することは危険ですか?
最近仮想マシンに変換された本番システムがいくつかあります。MySQLデータベースに頻繁にアクセスするアプリケーションがあり、クエリごとに接続を作成し、クエリを実行して、その接続を切断します。 これは適切なクエリ方法ではありませんが(わかっています)、回避できないように見える制約があります。とにかく、問題はこれです:マシンが物理ホストだったのに、プログラムは問題なく実行されました。仮想マシンに変換すると、データベースへの接続が断続的になるという問題に気付きました。ある時点で、TIME_WAITに24000以上のソケット接続がありました(物理ホスト上で、私が見た最大のものは17000でした-良くはありませんが、問題を引き起こしていません)。 これらの接続を再利用して、接続の問題が発生しないようにしたいと思います。 質問: tcp_tw_reuseの値を1に設定しても問題ありませんか?明らかな危険は何ですか?絶対にやらない理由はありますか? また、システム(RHEL / CentOS)を取得して、非常に多くの接続がTIME_WAITにならないようにしたり、再利用できるようにする方法は他にありますか? 最後に、tcp_tw_recycleを変更するとどうなりますか? よろしくお願いします!


5
TCP送信元ポートはホストごとに一意である必要がありますか?
TCP接続はタプル(ソースIP、ソースポート、宛先IP、宛先ポート)によって識別されることを学びました。したがって、理論的には、host1:port1からのクライアントをserver1:port1に接続し、同時にhost1:port1からserver2:port1への別のクライアント(host1で実行中)を接続することが可能になるはずです。 私はJavaで少しテストしましたが、これまでのところ可能であるようです。 ただし、送信元ポートがホストアドレスに対して一意である必要があることを何度も読みました。これは、基本的に、最大65536の同時発信TCP接続のハード制限があることを意味します。本当? 更新:これが私のJavaコードです。これは機能しているようで、netstat -t はポート9990からの2つのアクティブな発信接続(1から9997、1から9998)を明確に示しています。少なくとも最近のLinuxでは、それは可能だと思われますか? Socket s1 = new Socket(); s1.setReuseAddress(true); SocketAddress saremote = new InetSocketAddress("localhost",9999); SocketAddress salocal = new InetSocketAddress("localhost",9990); s1.bind(salocal); s1.connect(saremote); Socket s2 = new Socket(); s2.setReuseAddress(true); SocketAddress saremote2 = new InetSocketAddress("localhost",9998); SocketAddress salocal2 = new InetSocketAddress("localhost",9990); s2.bind(salocal2); s2.connect(saremote2); そしてnetstat -t出力(切り捨て): tcp6 0 0 localhost:9990 localhost:9998 CONNECTED …
10 tcp  socket 

4
Siege:記述子テーブルがいっぱいですsock.c:119:開いているファイルが多すぎます
次のコマンドでsiegeを使用して、自分のサーバーでストレステストを実行しようとしています。 $ siege -c 500 myweb.com/somefile.php しかし、私はこのエラーを受け取ります: [error] descriptor table full sock.c:119: Too many open files そして私もこの警告を受けます: libgcc_s.so.1 must be installed for pthread_cancel to work しかし、私はUbuntu 15.04(開発ブランチ)を使用していて、パッケージlibgcc1をインストールしているので、なぜ.so共有ライブラリについて理解できないのかわかりません。 オープンファイルが多すぎることとlibgcc警告を解決するにはどうすればよいですか?

3
tcp_tw_recycle / reuseを1に設定するとどのような影響がありますか?
構成ファイルでtcp_tw_recycle / reuseの両方を1に設定しました。 これを行うことの影響は何ですか? TCPソケットを再利用する場合、セキュリティ上のリスクはありますか?つまり、2つの異なる接続の両方でデータを送信できる可能性がありますか? 再接続の可能性が少しある短期間の接続に適していますか?
10 ubuntu  tcp  socket 

2
パスがUnixドメインソケットの最大値を超えているかどうかを確認する
オペレーティングシステムは、Unixドメインソケットのパスの長さを制限します。特定のパスがその制限内にあるかどうかを確認するにはどうすればよいですか? または、言い換えると、LinuxまたはMac OS Xシステムで、Unixドメインソケットのパスの最大許容長を確認するにはどうすればよいですか? ここでの使用例はSSH多重化です。ControlPathが長すぎると、UNIXドメインソケットが作成されるため、SSH多重化は機能しません。実際にsshセッションを開始してエラーメッセージを探すことなく、有効な制御パスを確認できるようにしたいのですが。
9 linux  ssh  mac-osx  socket 

4
UNIXドメインソケットを盗聴
一部のプロセスが特定のUNIXドメインソケット(/var/run/asterisk/asterisk.ctl)に書き込んでいることはわかっていますが、送信者のPIDはわかりません。誰がソケットに書き込んでいるかを知るにはどうすればよいですか?私は試しました: sudo lsof /var/run/asterisk/asterisk.ctl しかし、それはソケットの所有者をリストするだけです。誰がこのソケットに書き込み/読み取りを行っているのかを知りたいし、データを盗聴したい。これは可能ですか?
9 linux  socket 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.