タグ

websocketに関するpero1のブックマーク (12)

  • WebSocket(RFC 6455)上で使用するプロトコル設計についての備忘録 - kazuhoのメモ置き場

    一般論として、全二重の通信プロトコルを実装するにあたっては、いくつか注意すべき点があって、具体的には、到達確認と切断シーケンスについて定めておかないと、送達されたはずのメッセージがロストしていたり、切断タイミングによってエラーが発生*1したりする。 具体例をあげると、たとえばTCP/IPにおいてshutdown(2)を用いずに、いきなりclose(2)を呼んでいると、read(2)やwrite(2)がエラー(ECONNRESET)を返す場合がある。 翻って、WebSocket (RFC6455)の場合はどうなってるか? だいたい以下のような感じっぽい。 ws.close()が呼び出されるとWebSocketをCLOSING状態に変更し、Closeフレームを送信する ws.onmessageはWebCosketがCLOSING状態にある間も呼ばれるかもしれない*2 相手からCloseフレーム

    WebSocket(RFC 6455)上で使用するプロトコル設計についての備忘録 - kazuhoのメモ置き場
  • dstatの結果をfluentdで取得して、WebSocketで送りつけるリアルタイムリソース監視アプリを作ってみた。 - from scratch

    Tuppari公開記念Hackathonで作ろうとした奴を作ってみました。 ごめんなさい、micro instanceなのでアクセス過多で動かない時があるかもしれません、ちょっと調整中です。 リアルタイムリソース監視アプリ yosuke-furukawa/dstatwatcher · GitHub WebSocketを使ってリアルタイムにリソース監視したりログ監視したりするのは正直よくあるやつなのですが、fluentd使ってみたかったというのと、highchartを業の方で使おうか迷った挙句、使えなかった経緯があったので、使ってみようと思って作成してみました。 大体、↓の感じの流れでやってます。 Fluentdとdstatのつなぎの部分にはfluent-plugin-dstatを使用しています。 shun0102/fluent-plugin-dstat · GitHub これを使うと、d

    dstatの結果をfluentdで取得して、WebSocketで送りつけるリアルタイムリソース監視アプリを作ってみた。 - from scratch
  • WebSocketの中身を覗いてみる - m-kawato@hatena_diary

    この記事は、HTML5 Advent Calendar 2012の15日目のエントリーです。 WebSocketは、Webサーバ・ブラウザ間で双方向に通信するための仕様であり、APIとプロトコルがそれぞれ以下の規格で定義されています。 API: W3C WebSocket API プロトコル: IETF RFC 6455 - The WebSocket Protocol (日語訳) Node.js + Socket.IO のようなライブラリを使うと割と簡単にWebSocketが使えますが、中で何が起こっているかもう少し追ってみたいという動機により、tcpdump+WireSharkによるパケットキャプチャを通してWebSocket通信の中身を調べてみました。 作業環境 サーバ側、クライアント側ともホストWindows 7 (64ビット版) で、サーバはその上の仮想マシンとして動かしてい

    WebSocketの中身を覗いてみる - m-kawato@hatena_diary
  • WebSocket サーバの実装とプロトコル解説 - Block Rockin’ Codes

    intro なんだかんだ WebSocket を使ってるのに、 WebSocket サーバを自分で書いたことが無かったので、RFC も落ち着いてきたここらで、仕様を読みながら実装してみようと思いました。 "WebSocket サーバ 実装" とかでググると、 Socket.IO とか pywebsocket で WebSocket アプリ作って、「WebSocket サーバを実装」みたいなタイトルになってることが多いみたいですが、 (Apache に PHP で HelloWorld して、「HTTP サーバ実装しました」とは言わないよね。) この記事では、 WebSocket プロトコルをしゃべるサーバ自体を実装します。 といっても、全部やるのはちょっと大変だったので、基的なテキストメッセージのやりとりの部分だけやって、エコーサーバができるところまでやりました。 完成版のソースは以下で

    WebSocket サーバの実装とプロトコル解説 - Block Rockin’ Codes
  • WebSocket のバイナリメッセージを試したら、ウェブの未来が垣間見えた

    長い記事なので、先に結論だけ書いておきます。WebSocketのバイナリメッセージ機能は、これまでのインターネットのあり方をひっくり返します。「そんなの知ってるよ」という方もいるとは思います。僕も理屈では分かってたつもりだけど、実際にアプリを作ってみて、具体的にそれを感じることができたので、ちょっと長いですがどういうことなのか説明してみます。 WebSocketとは # WebSocketは、HTML5関連の中でも特に注目を集めている技術の一つです。通常のHTTP通信であればクライアントからのリクエストなしにサーバーは応答しませんが、WebSocketを使うことでクライアントとサーバーの間で双方向の通信が可能となります。これを利用することで、今後様々なリアルタイム性の高いサービスを構築することが可能になるでしょう。 そんなWebSocketですが、これまで波乱の道を歩んできました。数年前か

    WebSocket のバイナリメッセージを試したら、ウェブの未来が垣間見えた
  • ついにRFCに登場!Webサーバとの双方向通信を実現する「WebSocket」 - builder

    次世代のWebアプリケーションの中核を担う技術として「HTML5」に注目が集まっているが、それと並んで期待されている技術に「WebSocket」がある。 IETFとW3Cによって仕様の策定が進められており、最初の提案以来幾度もの改訂を経て、2011年12月11日にそのプロトコル仕様がRFCのProposed Standard(RFC 6455)となった。 AjaxからComet、そしてWebSocketへ WebSocketはウェブサーバとブラウザが直接コネクションを張って双方向通信するための技術規格である。HTTPとは異なる独自の軽量プロトコルによって通信を行うため、オーバーヘッドが小さく、長時間に渡って通信する場合でもHTTPコネクションを占有する必要がないというメリットがある。 WebSocketが生まれた背景には、サーバとブラウザがもっとリアルタイムに通信して情報の配信や更新を行え

    ついにRFCに登場!Webサーバとの双方向通信を実現する「WebSocket」 - builder
  • Google ChromeをWebSocketで制御する - 箱入りあじゃらの日記

    JavaScriptJavaScript Advent Calendar 2011 (Node.js/WebSocketsコース)の6日目。初参加です、緊張します。WebSocketネタということで、ChromeのWebKit Remote Debugging Protocolを使ってWebSocketでGoogle Chromeを操作する小ネタ。手順1.リモートデバッグを有効にしてChromeを起動Chromeの起動オプションに--remmote-debugging-portを付加してリモートデバッグを有効にする。 $ chrome --remote-debugging-port=9222 2.タブ一覧を取得今回はコントロールする側(Chrome)とされる側(node)が同一ホストで動いてるものとします。http://localhost:9222/jsonをGETで叩くとChromeのタ

  • WebSocketを使ってWebブラウザ間P2P通信をしてみた - いろいろな何か

    はじめに ブラウザ間でP2P通信が実現できれば、ブラウザ上で動作するP2Pアプリが作れて面白そうだなーと思ったのでWebSocketを使って実現してみました。仕組みについては以下で説明していきますが、私が実現した方法は限定的で実用性が低く色々と足りない部分もあるので、軽い気持ちで読んで頂けるとありがたいですw 仕組みの概要 なぜWebSocketを使うのか 従来、Webサーバとクライアント(Webブラウザ)間で非同期に通信するにはXHR(XMLHttpRequest)を用いてきました。基的にこのXHRは以下の図のように同一ドメインとしか通信できないという制約がありました。*1 しかし、WebSocketのthe Origin-based security modelでは異なるドメインとも通信することが可能になります。WebSocketプロトコルでは、サーバとクライアント間で接続を確立する

    WebSocketを使ってWebブラウザ間P2P通信をしてみた - いろいろな何か
  • JavaScript最新動向 〜WebSocket編〜

    Dev fest 2020 taiwan how to debug microservices on kubernetes as a pros (ht...

  • WebSocketでリアルタイム通信

    8/21開催 Chrome+HTML5 Conference@Goolgeの講演資料です。 A presentation for "Chrome+HTML5 Conference" on 2011/8/21 at Google Japna Office.Read less

    WebSocketでリアルタイム通信
  • WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT

    ご挨拶 こんにちは、ロンドンのNew Bambooという会社でWebエンジニアとして働いている@makoto_inoueです。ここのところ、PusherというWebSocketのクラウドサービスの開発に関わっています。今回から3回に渡ってWebSocketに関する短期連載を担当させていただきます。 私を含めたNew Bambooの面々(我々は自分たちのことをBambinoと呼んでいます)がWebSocketになぜ興味を持ったかということからはじまり、実際にクラウドサービスを始めるまでにいたったストーリーをお話ししたいと思います。そのストーリーを通じて、WebSocketが切り開く「リアルタイムWeb」な世界への可能性や技術的課題を皆さんと共有できればと思っています。

    WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT
  • 第1回 WebSocket登場までの歴史 | gihyo.jp

    はじめに 初めまして。NTTアドバンステクノロジの金城と申します。幸運にも記事を執筆させていただけることになりました。WebSocketという新しいウェブの規格についての連載を、全4回の予定でお届けします。 用語統一について WebSocketは「WebSocket」「⁠WebSockets⁠」⁠、単語を切り離した「Web Socket」等、表記に揺れがあります。2009年12月22日のワーキングドラフトのタイトルは「The Web Sockets API」となっていますが、2010年4月26日のエディターズドラフトでは「The WebSocket API」となっています。この連載では、最新の仕様書に則り、用語を「WebSocket」で統一します。 HTML5とWebSocketの関係 WebSocketは、もともとHTML5の一機能として仕様の策定が進められていました。しかし、Web S

    第1回 WebSocket登場までの歴史 | gihyo.jp
  • 1