SlideShare a Scribd company logo
サーバPUSH
ざっくりまとめ
2014/8/11
(2013/10に一度お蔵入り)
!
回り道 康博
目的
•PUSHについて以下のことを確認
•何でWebSocketがいいんだっけ
•従来の方式は何がよくないんだっけ
•そもそも何があったっけ
概要
•各方式をざっくり確認+比較
•ポーリング
•Ajax
•Comet
•Server Sent Events
•WebSocket
•図は以前書いたWebSocket / WebRTCの技術紹介から
ポーリング (1/4)
• クライアント契機でHTMLを取得
• 疑似PUSH
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
ポーリング (1/4)
• クライアント契機でHTMLを取得
• 疑似PUSH
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
ポーリング (1/4)
• クライアント契機でHTMLを取得
• 疑似PUSH
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
ポーリング (1/4)
• クライアント契機でHTMLを取得
• 疑似PUSH
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
画面を更新
ポーリング (1/4)
• クライアント契機でHTMLを取得
• 疑似PUSH
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
画面を更新
…
ポーリング (2/4)
•初期の疑似PUSH
•昔のBBSやチャット
•HTTPクライアントがHTTPサーバへ定
期的にアクセスして画面を再描画
•リアルタイム性はアクセス間隔に依存
ポーリング (3/4)
•メリット
•昔(とても昔)のブラウザでも動く
•特殊なことはやっていない
ポーリング (4/4)
•デメリット
•リアルタイム性が低い
•リアルタイム性を上げるために更新頻度を上げ
るとサーバ負荷上がる
•差分でなくフルのHTMLを毎回取得する
•クライアントは定期的にサーバへアクセスする
•クライアントはサーバに新しい情報があるかど
うか(だけを)知る術がない
Ajax (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
画面を更新
…
• クライアント契機でXML/jsonを取得
• 疑似PUSH
Ajax (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
画面を更新
…
• クライアント契機でXML/jsonを取得
• 疑似PUSH この辺がAjax
Ajax (2/4)
•Ajax = Asynchronous JavaScript + XML
•XHR(XMLHttpRequest)で実装
•XMLでなくテキストでもいい
•なのでJSONが使われることが多い(と
思う)
•「ちょっとマシなポーリング」ができる
Ajax (3/4)
•メリット
•ポーリング方式より通信負荷が低い
•サーバから必要なデータだけ持ってくる
•画面全体のHTMLを再取得しない
•「全データを予め取得するのが非現実的」で「状
況に応じてデータを取得する」用途に向く
•Googleマップとか
Ajax (4/4)
•デメリット
•PUSHの観点ではポーリングと変わらない
•サーバからデータを送るにはクライアン
トからのアクセスが必要
•というかそもそもPUSHのリアルタイム
性を上げるための仕様じゃない
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
画面を更新
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
次のPUSH用の
リクエストを投げる
画面を更新
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
次のPUSH用の
リクエストを投げる
画面を更新
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
次のPUSH用の
リクエストを投げる
画面を更新
Comet (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• サーバ契機でHTMLやXML/jsonを取得
• サーバからの即応性が改善された擬似PUSH データ発生まで
レスポンスを保留
この辺でデータが
発生するとラグ
次のPUSH用の
リクエストを投げる
画面を更新
Comet (2/4)
•ロングポーリング
•一般に、サーバは可及的速やかにレスポンスを返す
•Cometでは「PUSHしたい時」までレスポンスを返さ
ない
•つまりポーリングよりポーリング間隔が長い
•双方向通信
•クライアント to サーバは通常のHTTP
•サーバ to クライアントはComet
Comet (2/4)
•ロングポーリング
•一般に、サーバは可及的速やかにレスポンスを返す
•Cometでは「PUSHしたい時」までレスポンスを返さ
ない
•つまりポーリングよりポーリング間隔が長い
•双方向通信
•クライアント to サーバは通常のHTTP
•サーバ to クライアントはComet
この辺がロング
Comet (3/4)
•メリット
•リアルタイム性がポーリング方式より
高い
Comet (4/4)
•デメリット
•仕組み上、ごく短時間に連続でPUSHすることができない
•一度PUSHすると、クライアントから次のPUSH用の接続を
待たないといけない
•サーバは最大でポーリングの2倍のリソース(曖昧)を消費する
•「サーバ to クライアント(Comet)」で1つ
•「クライアント to サーバ(HTTP)」で1つ
•ポーリング方式より不利というだけで、根本的にはどの方式
でも同じ問題がついて回る(C10K問題)
Comet (4/4)
•デメリット
•仕組み上、ごく短時間に連続でPUSHすることができない
•一度PUSHすると、クライアントから次のPUSH用の接続を
待たないといけない
•サーバは最大でポーリングの2倍のリソース(曖昧)を消費する
•「サーバ to クライアント(Comet)」で1つ
•「クライアント to サーバ(HTTP)」で1つ
•ポーリング方式より不利というだけで、根本的にはどの方式
でも同じ問題がついて回る(C10K問題)
あくまでも
最大だよ
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH データ発生のたびに
送信する
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
分割(chunked)データ扱い
データ発生のたびに
送信する
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
分割(chunked)データ扱い
データ発生のたびに
送信する
画面を更新
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
分割(chunked)データ扱い
クローズしていないのでさらに送れる
データ発生のたびに
送信する
画面を更新
Server Sent Events (1/4)
クライアント サーバ
HTTPリクエスト
HTTPレスポンス
• Cometを洗練させたWeb標準(W3C CR)
• 本格的なPUSH
分割(chunked)データ扱い
クローズしていないのでさらに送れる
データ発生のたびに
送信する
画面を更新
•Server Sent Events (SSE)
•新しいロングポーリング方式
•Chunked Transfer Coding
•HTTPサーバがレスポンスを「分割(chunked)データ」
として宣言する
•サーバはPUSHが必要になる度にクライアントへデータを
送る
•データ = 「HTTPレスポンスの一部」をPUSHしても通信
が維持される
Server Sent Events (2/4)
•メリット
•リアルタイム性がポーリングより高い
•Cometに比べて、「一度サーバPUSHを受け
た後にクライアントが再接続」する手間とラ
グがない
•サーバ側の実装が従来の延長で可能
•WebSocketのような新規格への対応が不要
Server Sent Events (3/4)
•デメリット
•HTTPクライアント(ブラウザ等)がServer
Sent Eventsに対応していないといけない
•古いブラウザだと動かない
•具体的にはIE(11でも )とかAndroid標準
ブラウザ(4.4未満は )
•Cometと同じく、サーバは最大でポーリング方式
の2倍のリソースを消費する
Server Sent Events (4/4)
(補足) Streaming API
•Twitterのアレ
•Ajax + Chunked Transfer Coding
•機能上の特徴はServer Sent Eventsと同等
•クライアント側の処理がServer Sent Eventsより複雑
•Server Sent Eventsの仕様ができるより前に、同等のことを
HTTP 1.1 + Ajaxで実現したもの
•独自仕様の「Server Sent Eventsっぽい何か」と捉えても良い
•と解釈しているんだけど、情報がいまいち出てこなくて正しいかわか
らない
WebSocket (1/5)
サーバ
• HTTPの縛りを外して作られたWeb標準 (RFC 6455 / W3C CR)
• 本格的なPUSH
WebSocket
メッセージ
WebSocket (1/5)
サーバ
• HTTPの縛りを外して作られたWeb標準 (RFC 6455 / W3C CR)
• 本格的なPUSH
WebSocket
メッセージ
WebSocket (1/5)
サーバ
• HTTPの縛りを外して作られたWeb標準 (RFC 6455 / W3C CR)
• 本格的なPUSH
WebSocket
メッセージ
データ発生のたびに
送信する
WebSocket (1/5)
サーバ
• HTTPの縛りを外して作られたWeb標準 (RFC 6455 / W3C CR)
• 本格的なPUSH
画面を更新
WebSocket
メッセージ
データ発生のたびに
送信する
WebSocket (1/5)
サーバ
• HTTPの縛りを外して作られたWeb標準 (RFC 6455 / W3C CR)
• 本格的なPUSH
画面を更新
WebSocket
メッセージ
データ発生のたびに
送信する
WebSocket
メッセージ
クライアント
WebSocket (2/5)
サーバ
WebSocket
メッセージ
クライアント
送信完了前に別の送信を開始しても可
WebSocket (2/5)
サーバ
WebSocket
メッセージ
クロスしても可
クライアント
送信完了前に別の送信を開始しても可
WebSocket (2/5)
サーバ
WebSocket (3/5)
•効率的な双方向通信のために作られた、HTTPと別の規格
•WebSocketプロトコルは通信仕様、IETF管轄
•http://tools.ietf.org/html/rfc6455
•単に使う分にはそれほど意識しなくてもいい
•知っているに越したことはないが
•WebSocket APIはWebSocketをJavaScriptから使うた
めのAPI、W3C管轄
•http://www.w3.org/TR/websockets/
WebSocket (4/5)
•メリット
•HTTPプロトコルと比較してヘッダが軽量=通信負
荷が低い
•リアルタイム性が高い
•サーバ to クライアントとクライアント to サーバで
同じ経路
•サーバにやさしい、リソース的な意味で
•標準化策定済み
WebSocket (5/5)
•デメリット
•サーバ、クライアントともWebSocket規格への準拠が必要
•古いWebサーバやブラウザは非対応
•IE10未満とか、Android 4.4未満の標準ブラウザ
•既存の通信機器を通過できない可能性がある
•例えば80番port = HTTPの前提で監査しているルータ等
にWebSocket通信を流すと、異常データ扱いで弾かれる
ことがある
•httpsだと中身が見えないので比較的通りやすい
PUSH方式の比較
リアルタイム性
サーバの
負荷 (低)
Webサーバの
対応
ブラウザの
対応
ポーリング /
Ajax
△∼ ∼△ ○ ○
Comet ○ ○ ○ ○
Server Sent
Events
○ ○ ○ △
WebSocket ○ ○ △ △
まとめ
•WebSocket
•Server Sent Events
•Comet
•Ajax
•ポーリング
まとめ
•WebSocket
•Server Sent Events
•Comet
•Ajax
•ポーリング
越えられない壁
まとめ
•WebSocket
•Server Sent Events
•Comet
•Ajax
•ポーリング
おすすめ
非おすすめ
越えられない壁
蛇足
•HTTP2がないね
•そうすね、近いうちにRFC出そうですね
•あっちのPUSHは「好きな時にサーバPUSH」じゃなく「Webページ
に必要そうなデータをサーバ契機で予め送信」のPUSH
•PUSH方式選択のポイントは(サポート対象の)ブラウザ
•古いブラウザのサポートがmustな場合、新しい方式は辛いよ(今後も
含めて)
•今のWebサーバやブラウザは大抵WebSocketに対応済み
•でも通信経路的に使えないケースもあるから注意だよ
•悩んだらとりあえずSocket.IOで安定

More Related Content

What's hot

MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NET
terurou
 
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web ServiceアプリケーションAngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
ssuser070fa9
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
 
OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方
Hitachi, Ltd. OSS Solution Center.
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014Nov Matake
 
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホンYou_Kinjoh
 
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
ShuheiUda
 
Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法
Takeshi Fukuhara
 
WebRTCハンズオン
WebRTCハンズオンWebRTCハンズオン
WebRTCハンズオン
Yusuke Naka
 
Ingress on Azure Kubernetes Service
Ingress on Azure Kubernetes ServiceIngress on Azure Kubernetes Service
Ingress on Azure Kubernetes Service
Toru Makabe
 
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
Minoru Naito
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
 
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, Ltd. OSS Solution Center.
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
Jun Kato
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
 
HTTPを理解する
HTTPを理解するHTTPを理解する
HTTPを理解する
IIJ
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
 

What's hot (20)

MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NET
 
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web ServiceアプリケーションAngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
 
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホン
 
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
 
Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法
 
WebRTCハンズオン
WebRTCハンズオンWebRTCハンズオン
WebRTCハンズオン
 
Ingress on Azure Kubernetes Service
Ingress on Azure Kubernetes ServiceIngress on Azure Kubernetes Service
Ingress on Azure Kubernetes Service
 
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
 
HTTPを理解する
HTTPを理解するHTTPを理解する
HTTPを理解する
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
 

Similar to サーバPUSHざっくりまとめ

Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiKeisuke Ishibashi
 
再入門、サーバープッシュ技術
再入門、サーバープッシュ技術再入門、サーバープッシュ技術
再入門、サーバープッシュ技術
Shin Sekaryo
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
Sho A
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
tama200x Kobayashi
 
Mvp road show_0830_rev1
Mvp road show_0830_rev1Mvp road show_0830_rev1
Mvp road show_0830_rev1
Takano Masaru
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうmganeko
 
サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901Masayuki Abe
 
Mobile Web
Mobile WebMobile Web
Mobile Web
Makoto Kato
 
サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)
ひとし あまの
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
uupaa
 
[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門
Burp Suite Japan User Group
 
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらインターネット株式会社
 
Web基礎
Web基礎Web基礎
Web基礎
stx_kata
 
RESTful Webサービス
RESTful WebサービスRESTful Webサービス
RESTful Webサービス
Kentaro Inomata
 
20140906 jaws festa 2014 cloud front+route53
20140906 jaws festa 2014 cloud front+route53 20140906 jaws festa 2014 cloud front+route53
20140906 jaws festa 2014 cloud front+route53 Takuo Watanabe
 
Rust で簡易 HTTP サーバーを作ってみよう
Rust で簡易 HTTP サーバーを作ってみようRust で簡易 HTTP サーバーを作ってみよう
Rust で簡易 HTTP サーバーを作ってみよう
Yuki Toyoda ✲
 
Stuart attacking http2 implementations truefinal-jp
Stuart  attacking http2 implementations truefinal-jpStuart  attacking http2 implementations truefinal-jp
Stuart attacking http2 implementations truefinal-jp
PacSecJP
 
Thin Server Architectureでブログ作った #ikam
Thin Server Architectureでブログ作った #ikamThin Server Architectureでブログ作った #ikam
Thin Server Architectureでブログ作った #ikamToshiaki Maki
 
HTML5 と次世代のネットワーク プロトコル
HTML5 と次世代のネットワーク プロトコルHTML5 と次世代のネットワーク プロトコル
HTML5 と次世代のネットワーク プロトコル
彰 村地
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
Sota Sugiura
 

Similar to サーバPUSHざっくりまとめ (20)

Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshi
 
再入門、サーバープッシュ技術
再入門、サーバープッシュ技術再入門、サーバープッシュ技術
再入門、サーバープッシュ技術
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
 
Mvp road show_0830_rev1
Mvp road show_0830_rev1Mvp road show_0830_rev1
Mvp road show_0830_rev1
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそう
 
サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901
 
Mobile Web
Mobile WebMobile Web
Mobile Web
 
サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 
[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門
 
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
 
Web基礎
Web基礎Web基礎
Web基礎
 
RESTful Webサービス
RESTful WebサービスRESTful Webサービス
RESTful Webサービス
 
20140906 jaws festa 2014 cloud front+route53
20140906 jaws festa 2014 cloud front+route53 20140906 jaws festa 2014 cloud front+route53
20140906 jaws festa 2014 cloud front+route53
 
Rust で簡易 HTTP サーバーを作ってみよう
Rust で簡易 HTTP サーバーを作ってみようRust で簡易 HTTP サーバーを作ってみよう
Rust で簡易 HTTP サーバーを作ってみよう
 
Stuart attacking http2 implementations truefinal-jp
Stuart  attacking http2 implementations truefinal-jpStuart  attacking http2 implementations truefinal-jp
Stuart attacking http2 implementations truefinal-jp
 
Thin Server Architectureでブログ作った #ikam
Thin Server Architectureでブログ作った #ikamThin Server Architectureでブログ作った #ikam
Thin Server Architectureでブログ作った #ikam
 
HTML5 と次世代のネットワーク プロトコル
HTML5 と次世代のネットワーク プロトコルHTML5 と次世代のネットワーク プロトコル
HTML5 と次世代のネットワーク プロトコル
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
 

Recently uploaded

FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 

Recently uploaded (15)

FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 

サーバPUSHざっくりまとめ