第6回ゲームサーバ勉強会用資料です。 Webの技術の根幹となるHTTPやTCP/IPを軽くおさらいしたあと、 マルチプロセス、マルチスレッド、イベント駆動といったサーバアーキテクチャについて解析し、 さらにイベント駆動を実現するための非ブロッキングI/OとI/Oの多重化について解説します。
![知っているようで知らないWebサーバアーキテクチャ](https://cdn-ak-scissors.b.st-hatena.com/image/square/c7a8796fd0f7d666eb86962321028861968ad63d/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F79d775991f174cf7a1258f3d63edeb10%2Fslide_0.jpg%3F8009465)
SREチームの@cubicdaiyaです。今回はnginxによるTCPレイヤーでのロードバランスについて解説します。 ロードバランサーとしてのnginx nginxはHTTPやTCP、UDP等の複数のレイヤーでロードバランサーとして稼働させることができます。(TCPロードバランサーは1.9.0以降、UDPロードバランサーは1.9.13以降で利用可能です) また、ngx_http_ssl_module や ngx_stream_ssl_module を利用することでそれぞれのレイヤーでTLSを有効化することも可能です。 TCPロードバランサー用のモジュールを有効にする HTTPレイヤーでロードバランスするためのモジュールはデフォルトで組み込まれますが、TCP(とUDP)レイヤーでロードバランスするにはnginxのconfigureスクリプトに--with-stream(あるいは --with
特定のホストへのルートを確認するコマンドといえば、tracerouteコマンドだ。 今回は、そんなtracerouteコマンドで覚えておきたい使い方についてまとめてみる事にした。 1.基本的な使い方 tracerouteコマンドは、基本的には以下のように実行し、そのホストに至るまでの経路(どこのルーターを通っているか等)を確認出来る。 デフォルトでは、UDPプロトコルを利用して通信確認を行う。 traceroute 対象ホスト(ホスト名・IPアドレス) tracerouteコマンドでは、対象のホストに向けてTTLを1づつ足して通信確認を行っている。 そのため、通信の途中で傷害が発生していたとしても、どこの経路で発生しているのかがわかるようになっている。 動作のより詳しい解説については、こちらのサイトが記述してくれている。 2.使用するプロトコル・ポートを変更する デフォルトではUDPプロト
NginxのTCP Load Balancing(ngx_stream_core_module) もともとNginx+で利用できたTCP Load Balancing機能というものがある http://nginx.com/products/application-load-balancing/ HTTPにかぎらずTCPレイヤでロードバランシグ機能を提供する。つまりMySQLやMemcachedのロードバランサとしても使用することができるようになる。 OSS版でも使用できるようになったらしいhttp://hg.nginx.org/nginx/rev/61d7ae76647d 試しにMemcachedのロードバランサを構築してみた(環境はubuntu14.04) nginxビルド ざっと適当にインストール sudo apt-get install libpcre3 libpcre3-dev b
"速さ" の意味は? 遅延時間を測る データ帯域を測る 試験用のファイルを作る 例: wget で速度を測定 速度低下や変動の原因 回線を高速化すべきか?どこまで? "速さ" の意味は? TCP/IP に使っている回線のスピードと云っても大まかには "バンド幅" と "レイテンシー" の2つがある. データ帯域: 一定時間あたりに通信できるデータ量. 個人の利用ではこれが実際の使用感と係わっていると思う. 以下のバンド幅, レイテンシーの他に パケットサイズ, 受信窓サイズ,エラーに依る再転送などの様々な要因に影響される. バンド幅(band width): 一定時間に通過できるデータ量. データ経路の太さと考えると良い. 究極的には流せる信号の周波数(帯域幅)による. 経路が複数の要素からなるとき, 最小のバンド幅の要素が制限の要因となる. 例: ほぼ, 10BASE, 100BASE
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く