2017/02/16 Developers Summit 2017
2017/02/16 Developers Summit 2017
dots. Conference Spring 2016 ゲーム開発の裏側 http://eventdots.jp/event/580344
少し前に,Facebookのロードバランサが話題になっていた. blog.stanaka.org このエントリを読んで,各種Webサービス事業者がどういったロードバランスアーキテクチャを採用しているのか気になったので調べてみた. ざっくり検索した限りだと,Microsoft, CloudFlareの事例が見つかったので,Facebookの例も併せてまとめてみた. アーキテクチャ部分に注目してまとめたので,マネジメント方法や実装方法,ロードバランス以外の機能や最適化手法といった部分の詳細には触れないことにする. 事例1: Microsoft Azure 'Ananta' MicrosoftのAzureで採用されている(いた?)ロードバランサのアーキテクチャは,下記の論文が詳しい. Parveen Patel et al., Ananta: cloud scale load balancing
上記のような場合に、http://vmweb.cloudapp.netへアクセスするとvmweb1(またはvmweb2)の10080 portへラウンドロビンでアクセスすることになる。 1-3.定期メンテに耐える構成を! どんなタイミングで起きるかまだ良くわかっていないが定期メンテナンスでvmが再起動されるらしい。 全台停止等が起きないように対策が必要だが下記の方法を取ることである程度回避できる 可用性セット(avvalability set)に入れることで同時にvmは落ちない 可用性セットに沢山vmを入れ過ぎない。メンテは実施されるので確立が上がる。 2.グローバルIPをコロコロ変えられないようにしたい! 課題 初期設定のままだとサーバを停止/起動するとグローバルIPが開放されてしまう。 また、定期メンテナンスなどで再起動されてしまうと予定外に設定変更されてしまう。 対策 可用性セット(
先日、NginxのTCP Load BalancingがOSS版でも使えるらしいので試すで書いたとおり、Nginx 1.9よりTCP Load Balancing機能が使える見込みである。 今回は、更にTLS終端を可能にするngx_stream_ssl_moduleも合わせて使用し、WebSocket over TLSの負荷分散を試してみる。 ngx_stream_ssl_module ngx_stream_ssl_moduleでは、接続をTLSで受付け、その中身のメッセージをバックエンドに送信する。 TCP Load Balancingの時と同じようにHTTP/HTTPSに限った機能ではないことが特徴となる。 (ただし、ALPNが必要なプロトコルだと少々扱いが難しい) 使うには、前回同様最新リビジョンをビルドする必要がある http://hg.nginx.org/nginx/ より最新リ
AWSにはElastice Load Balancerというロードバランサがあります。これはとても安いこともあって多くのお客様のwebサービスで使っていただいています。 最近はwebsocketを使いたい!という声もありますが、いくつかの制限により、 ELBは最初のネゴシエーションにだけ使って、ネゴシエーション後のwebsocketにかかわらない方法がおすすめです。 そもそも問題は、 ELBの場合、HTTPモードだとそもそも同じポートのままではwebsocketに遷移できない。 ELBでTCPモードにした場合でも60秒でタイムアウトする。 の2点が原因です。そのため、2つの方法があります。 解1: ELBは最初のネゴシエーションにだけ使って、ネゴシエーション後のwebsocketにかかわらない方法 C ---------> ELB(HTTPモード) --> S ふつうにHTTPでアクセス。
AWSを使い始めて約一年が経過したので、この一年を振り返ってみて、最初から知ってた方が良かったな〜と思ったポイントをピックアップしてみました。 IAMロールはName変えられないし付け替えもできない件勢いだけで作ったIAMロールを付与して意気揚々と運用開始!数ヶ月後に付け替えできない事に気付いて、ec2ctrlとかいかにもEC2インスタンスをコントロールするためのロールなのに、なぜかS3の全権限付与してたり、もはや名前から予測できない事態になってしまったという話。 まぁ、別にオオゴトでは無いんですけどね。インスタンス作り直せば付け替えできるし、新しいロール作ってインスタンス作り直せばいいだけの話です。やるかやらないか。 やりませんけど! VPCでVPN接続はリージョン毎に1つしか設定できなかった件IDC側のグローバルIPが複数用意できない前提ですが、IDCとAWS(VPC)間でのVPN接続
本記事の公開後の2016年7月にはてなにおけるチューニング事例を紹介した。 はてなにおけるLinuxネットワークスタックパフォーマンス改善 / Linux network performance improvement at hatena - Speaker Deck HAProxy や nginx などのソフトウェアロードバランサやリバースプロキシ、memcached などの KVS のような高パケットレートになりやすいネットワークアプリケーションにおいて、単一の CPU コアに負荷が偏り、マルチコアスケールしないことがあります。 今回は、このようなネットワークアプリケーションにおいて CPU 負荷がマルチコアスケールしない理由と、マルチコアスケールさせるための Linux カーネルのネットワークスタックのチューニング手法として RFS (Receive Flow Steering) を
「リソースが足りない!」というときに役立つ、小規模なシステムでも気軽に利用できるロードバランサー、ELB(Elastic Load Balancing)の設定方法を説明します。 これまでの物理環境では、負荷の増大に応じてロードバランサーを使おうとした場合、専用のアプライアンスやハードウェアを導入したり、新たにソフトウェアを導入したりと多くの費用と手間がかかるため、大規模システムでなければ導入が難しい場合が多くありました。 しかしAWSの場合、特別な契約などを結ぶことなく、EC2の管理メニューから簡単にELB(Elastic Load Balancing)を利用できます。これまでロードバランサーを導入できなかったような小規模なシステムでも、気軽に利用できるようになります。 Amazon ELB(Elastic Load Balancing)の設定 実際にAWSでロードバランサーを設定するには
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く