Perl入学式 全6回のPerl入門講座。東京、大阪、沖縄、札幌で開催。(東京は4月と10月スタート、それ以外は5月スタート) YAPC::Japan Perlを軸としたITに関わる全ての人のためのカンファレンス。 東京 吉祥寺.pm 五反田.pm 大阪 なにわPerl 沖縄 沖縄.pm
Overview ADSLや光回線などの充実によって,ここ数年でネットワークの回線速度もかなり進歩してきました.ですが,Linuxの バージョンによっては,一昔のネットワーク速度を基準としてパラメータの設定を行っているためにネットワーク帯域を フル活用できていない場合もあります(特に,1Gbpsを超えるような場合はその可能性が高い).そこで,今回はボトルネック の一つとなりやすいバッファサイズのチューニング方法について記述します. sysctl変数の設定 Linuxにおいてシステム全体のバッファサイズを変更する場合には,sysctlコマンドを使用します.設定する項目は, 下記の9種類です( Manpage of TCP参照). net.ipv4.tcp_window_scaling RFC 1323のTCPウィンドウスケーリングを有効にします.この機能を用いると,(接続先が対応していれば)
TCP/チューニング/Linux TCP/チューニングから分家. ソケットバッファサイズ /proc/sys/net/core/rmem_default, rmem_max /proc/sys/net/core/wmem_default, wmem_max 1ソケットに割り当てられるバッファのデフォルトと最大値のシステムグローバルな値. これらの値は起動時にメモリ量から自動設定される.物理メモリが 16MB 以下で 32KB,16M〜512MB で 64KB,512MB 以上で 128KB. ソケットローカルに設定したい場合は,(setsockopt によって) SO_SNDBUF,SO_RCVBUF ソケットオプションを利用する. ソケットオプションで設定できる上限は rmem_max,wmem_max となる. struct sock の sndbuf,rcvbuf あたりに関係. /
poll(2) や select(2) を使う代わりに、カーネルからアプリケーションに イベントを通知させるのに SIGIO シグナルを使う方法もある。 この方法を使うには、 fcntl(2) を用いてソケットのファイルディスクリプタに O_ASYNC フラグをセットし、 SIGIO に対する有効なシグナルハンドラを sigaction(2) によって設定しておく必要がある。 後述の シグナル に関する議論も参考にすること。 ソケットオプション これらのソケットオプションは、 setsockopt(2) を用いれば設定でき、 getsockopt(2) を用いれば取得できる。 但し、どのソケットの場合も ソケットレベルには SOL_SOCKET を指定すること。 SO_ACCEPTCONN このソケットが listen(2) によって接続待ち受け状態に設定されているかどうかを示す値を返す。
大規模サイトの為のLinuxカーネルチューニング (Linux kernel tuning for large site) 文責: もりかわひろかず * ** 大規模なサービスを行うサーバOSとしておこなうべき チューニングの定石について記述します kernelのバージョンは2.4.31を対象にしています (もう2.6でしょう) (2.4版のメンテやめます) OSのデフォルト設定は一般的な規模を想定しています それを逸脱するような大規模な用途(大規模なwebサーバ、 web cache(squid)サーバ、バーチャルドメインサーバ[仮想サーバ])に使用するには、 やはりそれなりのチューニングが必要になってきます 以下で、そのチューニングの定石を列挙します (なぜチューニングが必要なのか) (個々の値については各サイトで調節してください) (以下のパラメータは I
Section: Linux Programmer's Manual (2) Updated: 2007-12-28 Index JM Home Page roff page 名前 listen - ソケット(socket)上の接続を待つ 書式 #include <sys/types.h> /* 「注意」参照 */ #include <sys/socket.h> int listen(int sockfd, int backlog); 説明 listen() は sockfd が参照するソケットを接続待ちソケット (passive socket) として印をつける。 接続待ちソケットとは、 accept(2) を使って到着した接続要求を受け付けるのに使用されるソケットである。 sockfd 引き数は、 SOCK_STREAM 型か SOCK_SEQPACKET 型のソケットを参照するファイ
ついに発売されたスト4のコンシューマ機版をやりたくてしょうがないけど筐体を買ってもらえないので、駅前のゲーム屋のディスプレー前で垂涎するばかりのmikioです。今回は連載の最終回で、各種スクリプト言語を使ってお手軽にテーブルデータベースを操作する方法について説明します。 TokyoCabinet::TDB まずは、TCのPerlバインディングとRubyバインディングの最新版を入手してください。それぞれテーブルデータベースを扱うための TokyoCabinet::TDB というクラスが加わっています。以下のようなIDLによるガイドラインに準拠したインターフェイスが提供されますので、使い方は言語にかかわらず同じようになるはずです。 module TokyoCabinet { interface TDB { boolean open(in string path, in long omode);
アクティブFTPとパッシブFTP [サーバの実験室 基礎] 作成 : 2002/10/12 "サーバの実験室"の検索 FTPには、データ転送に使用するポートと接続方法の違いによって、アクティブFTPとパッシブFTPに分類することができる。 アクティブFTP 昔からある方法で、WindowsのFTPコマンドなどがこれにあたる。 FTPの制御(コマンドとレスポンス)に21番ポートを使用し、FTPのデータ転送(lsコマンドの結果、ファイルのアップロード・ダウンロード)に20番ポートを使用する。
本来、FTPサービスは21番のポートをオープンして接続を待っています。そしてクライアントが21番に 接続をすると、次はサーバ側の20番ポートがクライアントに対して、データコネクション確立の要求を 行います。上記の説明で前半部分は、クライアントからコネクション確立を要求していますが、 後半部分はサーバ側からコネクション確立をしていることになります。そしてここがポイントになります。 もしクライアント機がファイアウォール下などにある環境ですと、この後半部分のサーバ側からの コネクション確立を弾いてしまうんです。そうなるとデータコネクションが確立しませんので、 FTPに接続できないことになってしまいます(厳密には、lsコマンドなどのデータのやり取りが できないという事)。 このような環境下にあるクライアント機は多く存在すると思います。それでは、この環境下に あるクライアント機はF
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く