Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20120525 mt websocket

1,474 views

Published on

  • Be the first to comment

20120525 mt websocket

  1. 1. ステートレスから一周回ってステートフルへ - WebSocketとか - 2012/05/25 松本勉強会ファーストサーバ第II技術G Page 1 / 7
  2. 2. Infomation Id:sawanoboly HiganWorks LLCの代表をやっています Giraffiを作り続けています ※本日はコレ向けに調査した内容をネタに出張版 最近ZCloud利用(検討)者のコンサルも始めました 一緒に働いてくれる人も(ゆるく)募集中!※このスライドは第二回松本勉強会にLT参加した際の資料です、配布了承済み。 Page 2 / 7
  3. 3. HTTPのステートレスおさらい 1リクエストに1レスポンスで完結!GET / HTTP/1.1 HTTP/1.1 200 OKUser-Agent: curl/7.22.0 Content-Type:Host: www.example.com text/html;charset=utf-8Accept: */* Content-Length: 8 Body... コネクション ここでおしまい Page 3 / 7
  4. 4. HTTPで困ること 双方向のデータ交換にあまり向いていない 送信にHTTPのリクエストがまるまる必要、ヘッダが無駄 需要の高まってきたリアルタイム通信に弱い Pushが弱い、クライアント判別に苦労 クライアント同士でチャット等に壊滅的 ポーリング?Commet? Stremingなど工夫の実装はある も一方通行 リアルタイム通信や、サーバサイドPushの需要には ステートフルデータ交換の対応が必要※『FSではステートフルなSMTPもFTPも使こうとるよ?』というのは 置いといてください Page 4 / 7
  5. 5. WebSocketってどんなプロトコル? HTML5で仕様固められていたがやっぱり別のプロト コルとして独立。 HTTP1.1のUpgradeを利用して、データ交換プロト コルをHTTPからWebSocketに更新してつかいます。 ※HTTPと同じポートで使えるのが最大のメリット。 平たく言うと、HTTPぽくコネクションしてからの Telnet!※GiraffiのモニタリングデータはWebSocketを使い、リアルタイムでPushされるようになる(予定) Page 5 / 7
  6. 6. WebSocketコネクションGET / HTTP/1 1 HTTP/1 1 101Upgrade: WebSocket WebSocket Protocol HandshakeConnection: Upgrade Upgrade: WebSocketHost: www.example.com Connection: UpgradeOrigin: Sec-WebSocket-Location: http:// www.example.com ws:// www.example.com /Sec-WebSocket-Key1: Sec-WebSocket-Origin: ******== http:// www.example.comSec-WebSocket-Key2: ******== WebSocketコネクション確立 これ以降は双方向でデータの交換が可能 <ー[データ開始]データ[データ終端]ー> Page 6 / 7
  7. 7. HTTPと見せかけてのTCPコネクション従来のHTTP向けのロードシェアや、キャパシティ計算にもう一要素が必要。=>L4の取り回しを考慮するESTABLISHEDのTCPコネクション 無通信時、切断等の制限は? (仕様では切断なし) L4ロードバランサのは以下では? ex. AmazonのELB (60s)今後一般向けでリアルタイム需要は近い? to be continued... Page 7 / 7

×