タグ

socketに関するjimo1001のブックマーク (4)

  • Linux kernel 3.9 の新機能 SO_REUSEPORT を試してみる - nigakyのブログ

    Linux kernel 3.9 のマージウィンドウでは SO_REUSEPORT というソケットオプションがマージされました。 Merge branch 'soreuseport' · c617f39 · torvalds/linux · GitHub これは同一ポートに複数のリスナー(listen ソケット)が bind できるようになるというもので、Webサーバなど単一のポートに多くのコネクションが来るようなワークロードで、複数プロセスでうまく負荷分散ができるようになるそうです。 (これまでだと一人がaccept()してそれぞれの worker に渡すというようなモデルがありましたが、これでは accept() する部分がボトルネックになってしまいがちでした。) BSDでは元々 SO_REUSEPORT オプションはあったようですが、マルチキャスト通信で使うもののようです。Linux

    Linux kernel 3.9 の新機能 SO_REUSEPORT を試してみる - nigakyのブログ
  • Kazuho@Cybozu Labs: Picoev: a tiny event loop for network applications, faster than libevent or libev

    I am sure many programmers writing network applications have their own abstracting layers hiding the differences between various I/O multiplex APIs, like select(2), poll(2), epoll(2), ... And of course, I am one among them.  While writing mycached (see Mycached: memcached protocol support for MySQL for more information), I was at first considering of using libev for multiplexing socket I/Os.  Libe

  • 第1回 IPv6ソケットプログラミング [C++] | Netsphere Laboratories

    (2006.8.5 ページを独立。) C/C++でのIPv6ソケットプログラミングについて。 ソケットについてはすでに掃いて捨てるほど解説サイトがあるが、IPv6に対応した、しかもポータブルな書き方を紹介しているところは見当たらなかった。 目次: サーバを作る クライアントを作る IPv6, IPv4を区別するサーバ @ サーバを作る まず、ソケットでIPv4あるいはIPv6クライアントからの接続を受け付けるプログラムを作ってみる。Fedora Core 5 Linuxで試した。 IPv4 onlyのときの典型的なコードは、次のようになる。※現代ではこのように書いてはいけません。 /** * TCP で listen する. IPv4 only. 実コードで使用不可! * * @param node bind() するホスト名. NULL の場合 INADDR_ANY. * @param

  • ソケットの使用法

    ソケットの概要 ソケットとはアプリケーションをインターネットに接続するための機構です。 インターネット通信をサポートするサーバーやクライアントには必ずソケットが必要になります。 以下では、ソケットの実際的な使い方を、 サーバーを作成する場合とクライアントを作成する場合とに分けて解説します。 なお、ここで説明する内容は、開発環境がWindowsであることを想定しています。 Unixでソケットを使いたい場合は別の文献を参照してください。 また、ソケットを使う際に注意するべきことがあるので、「注意!」にまとめました。 プログラミングの際には必ず一読してください。 サーバーの作成法(TCP) ここではTCP通信をベースとしたサーバーの構成法について解説します。 図1にサーバー作成での基的な操作の流れを示しました。 この章では初期設定に必要なsocket, bind, li

  • 1