SlideShare a Scribd company logo
1 of 39
Download to read offline
ウェブソケットの仕組み
.
1

概要

.
2

プロトコルの仕様
接続の流れ
データ通信
メッセージの分割
フレームの種類

.
3

問題点

.
4

まとめ

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

1 / 16
概要

中学生が見たウェブソケット
ウェブソケットちょー簡単じゃんw

§

¦
§

¤

var ws = new WebSocket ( "ws://localhost:8080/echo" ) ;
ws . onmessage = f u n c t i o n ( e ) {
console . log ( e . data ) ;
};

¥
¤

var WebSocketServer = r e q u i r e ( 'ws' ) . Server
, wss
= new WebSocketServer ( { port : 8080}) ;
wss . on ( 'connection' , f u n c t i o n ( ws ) {
ws . on ( 'message' , f u n c t i o n ( message ) {
console . log ( 'received: %s' , message ) ;
}) ;
ws . send ( 'something' ) ;
}) ;

¦

¥

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

2 / 16
概要

中学生が見たウェブソケット
ウェブソケットちょー簡単じゃんw

§

¦
§

¤

var ws = new WebSocket ( "ws://localhost:8080/echo" ) ;
ws . onmessage = f u n c t i o n ( e ) {
console . log ( e . data ) ;
};

¥
¤

var WebSocketServer = r e q u i r e ( 'ws' ) . Server
, wss
= new WebSocketServer ( { port : 8080}) ;
wss . on ( 'connection' , f u n c t i o n ( ws ) {
ws . on ( 'message' , f u n c t i o n ( message ) {
console . log ( 'received: %s' , message ) ;
}) ;
ws . send ( 'something' ) ;
}) ;

¦

¥

できた!!(^o^)
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

2 / 16
概要

kwsk

The WebSocket Protocol
RFC6455

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

3 / 16
概要

背景
.
問題点
.
HTTPはリクエスト・レスポンスベース
更新などをリアルタイムで行いたい
.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

4 / 16
概要

背景
.
問題点
.
HTTPはリクエスト・レスポンスベース
更新などをリアルタイムで行いたい
.
.
解決法
.
頻繁にリクエストする
無駄が多すぎる

.
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

4 / 16
概要

背景
.
問題点
.
HTTPはリクエスト・レスポンスベース
更新などをリアルタイムで行いたい
.
.
解決法
.
頻繁にリクエストする
無駄が多すぎる

Long polling

.

TCP接続が無駄に増える
無駄なオーバヘッド(ヘッダーなど)
実装が複雑

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

4 / 16
概要

ウェブソケットプロトコル

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル
TCP上で稼働する
ただのTCPソケットではない

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル
TCP上で稼働する
ただのTCPソケットではない

Full Duplex(全二重)通信
クライアントからサーバーに一方的に通信可能
サーバーからクライアントに一方的に通信可能

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル
TCP上で稼働する
ただのTCPソケットではない

Full Duplex(全二重)通信
クライアントからサーバーに一方的に通信可能
サーバーからクライアントに一方的に通信可能

HTTPとまったく別のプロトコル

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル
TCP上で稼働する
ただのTCPソケットではない

Full Duplex(全二重)通信
クライアントからサーバーに一方的に通信可能
サーバーからクライアントに一方的に通信可能

HTTPとまったく別のプロトコル
デフォルトでポート80と443を使う

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
概要

ウェブソケットプロトコル
プロトコル
TCP上で稼働する
ただのTCPソケットではない

Full Duplex(全二重)通信
クライアントからサーバーに一方的に通信可能
サーバーからクライアントに一方的に通信可能

HTTPとまったく別のプロトコル
デフォルトでポート80と443を使う
既存のHTTPサーバーが対応しやすいプロトコル

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

5 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

.
Browser
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

HTTP
request
.
Browser
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

GET /chat HTTP/1.1
Host: server.example.com
Origin: http://example.com
Upgrade: websocket
Connection: Upgrade

HTTP
request
.
Browser
Daniel Perez

Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Protocol:
chat, superchat
Sec-WebSocket-Version: 13
ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
Check
request

WebSocket
Server

GET /chat HTTP/1.1
Host: server.example.com
Origin: http://example.com
Upgrade: websocket
Connection: Upgrade

HTTP
request
.
Browser
Daniel Perez

Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Protocol:
chat, superchat
Sec-WebSocket-Version: 13
ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

HTTP response

.
Browser
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

HTTP response

HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept:
s3pPLMBiTxaQ9kYGzzhZRbK
+xOo=

.
Browser
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade

Finalize
upgrade
Daniel Perez

Sec-WebSocket-Accept:
s3pPLMBiTxaQ9kYGzzhZRbK
+xOo=
.
Browser
ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

接続の流れ

接続の流れ
WebSocket
Server

Full

Duplex

.
Browser
Daniel Perez

ウェブソケットの仕組み

2013年12月12日

6 / 16
プロトコルの仕様

データ通信

データ形式
概要

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

7 / 16
プロトコルの仕様

データ通信

データ形式
概要

基本単位は「メッセージ」
TCPソケットと違ってバイトではない
使う時は必要な処理が大きく減る

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

7 / 16
プロトコルの仕様

データ通信

データ形式
概要

基本単位は「メッセージ」
TCPソケットと違ってバイトではない
使う時は必要な処理が大きく減る

メッセージが「フレーム」に分割される

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

7 / 16
プロトコルの仕様

データ通信

データ形式
概要

基本単位は「メッセージ」
TCPソケットと違ってバイトではない
使う時は必要な処理が大きく減る

メッセージが「フレーム」に分割される
クライアントがフレームにマスクを掛ける
クライアント側からの不正なメッセージを避ける

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

7 / 16
プロトコルの仕様

データ通信

データ形式(続き)
フレームの構成
§

¦

¤

0
1
2
3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+ −+ −+ − − − −+ − − − − − − − − − − − − − − − − − − − − − −+
−+ −+ − − − −+ − − − − − − −+ − − − − − − − − − − − − − − −
| F | R | R | R | opcode |M| Payload len |
Extended payload length
|
| I |S|S|S|
(4)
|A|
(7)
|
(16/64)
|
|N| V | V | V |
|S|
|
( i f payload len ==126/127)
|
| |1|2|3|
|K|
|
|
+−+
−+−+−+ − −
−− −− −+−+ −−
−− −−−−−−−−−+ − − − − − − − − − − − − − − − +
|
Extended payload length continued , i f payload len == 127 |
+ −−−−−−−−−−−−−−− +−−−−−−−−−−−−−−−
− − − − − − − − − − − − − − − −+
|
| Masking−key , i f MASK s e t to 1 |
+ − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − −+
− − − − − − − − − − − − − − − −+ − − − − − − − − − − − − − − −
| Masking−key ( continued )
|
Payload Data
|
+−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− +
−−−−−−−−−−−−−−−−
:
Payload Data continued . . .
:
+ −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− +
|
Payload Data continued . . .
|
+−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
− − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − −+

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

¥
8 / 16
プロトコルの仕様

メッセージの分割

メッセージの分割
目的

最初から長さの分からないメッセージの送信
送信開始時に読み込める分だけ送ることができる
分割なしでは, バッファリングする必要が生じる

マルチプレキシング
1つのチャネルで複数の通信を行う
重いフレームで時間を掛けたくない

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

9 / 16
プロトコルの仕様

メッセージの分割

メッセージの分割
仕様

分割されていないメッセージ
{
opcode ̸= 0x00
FIN
=1

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

10 / 16
プロトコルの仕様

メッセージの分割

メッセージの分割
仕様

分割されていないメッセージ
{
opcode ̸= 0x00
FIN
=1
分割されたメッセージ
1つ目のメッセージ
{
opcode ̸= 0x00
FIN
=0

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

10 / 16
プロトコルの仕様

メッセージの分割

メッセージの分割
仕様

分割されていないメッセージ
{
opcode ̸= 0x00
FIN
=1

分割されたメッセージ
途中のメッセージ
{
opcode = 0x00
FIN
=0

分割されたメッセージ
1つ目のメッセージ
{
opcode ̸= 0x00
FIN
=0

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

10 / 16
プロトコルの仕様

メッセージの分割

メッセージの分割
仕様

分割されていないメッセージ
{
opcode ̸= 0x00
FIN
=1

分割されたメッセージ
途中のメッセージ
{
opcode = 0x00
FIN
=0

分割されたメッセージ
1つ目のメッセージ
{
opcode ̸= 0x00
FIN
=0

Daniel Perez

ウェブソケットの仕組み

最後のメッセージ
{
opcode = 0x00
FIN
=1

2013年12月12日

10 / 16
プロトコルの仕様

フレームの種類

フレームの種類
フレームの種類はopcodeで決まる.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

11 / 16
プロトコルの仕様

フレームの種類

フレームの種類
フレームの種類はopcodeで決まる.
.
データフレーム
.
テキストフレーム
バイナリフレーム
.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

11 / 16
プロトコルの仕様

フレームの種類

フレームの種類
フレームの種類はopcodeで決まる.
.
データフレーム
.
テキストフレーム
バイナリフレーム
.
.
制御フレーム
.
Close 接続を閉じる
Ping 接続の確認
Pong Pingに対する返信
.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

11 / 16
問題点

現状での問題点

WebSocketはまだなかなか使われない
.
問題
.

.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

12 / 16
問題点

現状での問題点

WebSocketはまだなかなか使われない
.
問題
.
IEとかいうやつは・・おいておくとして

.

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

12 / 16
問題点

現状での問題点

WebSocketはまだなかなか使われない
.
問題
.
IEとかいうやつは・・おいておくとして
UpgradeはHop-by-Hopヘッダ

.

Keep-Aliveなどと同じく
1つ目の通過点でなくなる
対応していないプロクシは通れない

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

12 / 16
まとめ

まとめ

独自のプロトコル
Full Duplex通信
HTTPワークフローに入り込みやすい設計
メッセージ単位で通信
メッセージはフレームで分割
プロクシーが対応している必要がある

Daniel Perez

ウェブソケットの仕組み

2013年12月12日

13 / 16

More Related Content

What's hot

オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
Yoji Kanno
 

What's hot (20)

トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化
 
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
 
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & App...
アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & App...アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & App...
アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & App...
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
分散システムの限界について知ろう
分散システムの限界について知ろう分散システムの限界について知ろう
分散システムの限界について知ろう
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
 
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
 
CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料CTF for ビギナーズ ネットワーク講習資料
CTF for ビギナーズ ネットワーク講習資料
 
暗号技術の実装と数学
暗号技術の実装と数学暗号技術の実装と数学
暗号技術の実装と数学
 
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現するゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
Protocol Buffers 入門
Protocol Buffers 入門Protocol Buffers 入門
Protocol Buffers 入門
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
 

Viewers also liked

JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要
Shumpei Shiraishi
 

Viewers also liked (17)

Python/Bottle for Kubo Semi 2014
Python/Bottle for Kubo Semi 2014Python/Bottle for Kubo Semi 2014
Python/Bottle for Kubo Semi 2014
 
JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要
 
20120525 mt websocket
20120525 mt websocket20120525 mt websocket
20120525 mt websocket
 
WebSocketでリアルタイム通信
WebSocketでリアルタイム通信WebSocketでリアルタイム通信
WebSocketでリアルタイム通信
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
 
"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた
"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた
"Bits from the Apache Maintainers / Upcoming apache2 2.4 transition" を読んでみた
 
WebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をするWebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をする
 
Funcargs & other fun with pytest
Funcargs & other fun with pytestFuncargs & other fun with pytest
Funcargs & other fun with pytest
 
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
 
HTTP/2 入門
HTTP/2 入門HTTP/2 入門
HTTP/2 入門
 
このPHP拡張がすごい!2017
このPHP拡張がすごい!2017このPHP拡張がすごい!2017
このPHP拡張がすごい!2017
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
 
AWS re:Invent 2016: Building a Smarter Home with Alexa(ALX303)
AWS re:Invent 2016: Building a Smarter Home with Alexa(ALX303)AWS re:Invent 2016: Building a Smarter Home with Alexa(ALX303)
AWS re:Invent 2016: Building a Smarter Home with Alexa(ALX303)
 
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピングAWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
 
AWS re:Invent 2016: Voice-enabling Your Home and Devices with Amazon Alexa an...
AWS re:Invent 2016: Voice-enabling Your Home and Devices with Amazon Alexa an...AWS re:Invent 2016: Voice-enabling Your Home and Devices with Amazon Alexa an...
AWS re:Invent 2016: Voice-enabling Your Home and Devices with Amazon Alexa an...
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT
 
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over WebsocketIntroduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
 

Similar to WebSocketプロトコル

Html5, Web Applications 2
Html5, Web Applications 2Html5, Web Applications 2
Html5, Web Applications 2
totty jp
 
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
Yoshiaki Sugimoto
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
yut148atgmaildotcom
 
HttpとTelnetをつなぐ何か
HttpとTelnetをつなぐ何かHttpとTelnetをつなぐ何か
HttpとTelnetをつなぐ何か
ShigekiYamada
 
Spring3.1概要 データアクセスとトランザクション処理
Spring3.1概要 データアクセスとトランザクション処理Spring3.1概要 データアクセスとトランザクション処理
Spring3.1概要 データアクセスとトランザクション処理
土岐 孝平
 

Similar to WebSocketプロトコル (20)

WebRTC meetup Tokyo 1
WebRTC meetup  Tokyo 1WebRTC meetup  Tokyo 1
WebRTC meetup Tokyo 1
 
Let's begin WebRTC
Let's begin WebRTCLet's begin WebRTC
Let's begin WebRTC
 
AWSとmod_pagespeedで 楽々サクサク高速化!!
AWSとmod_pagespeedで楽々サクサク高速化!!AWSとmod_pagespeedで楽々サクサク高速化!!
AWSとmod_pagespeedで 楽々サクサク高速化!!
 
Html5, Web Applications 2
Html5, Web Applications 2Html5, Web Applications 2
Html5, Web Applications 2
 
Openstack+Ceph設定ガイド
Openstack+Ceph設定ガイドOpenstack+Ceph設定ガイド
Openstack+Ceph設定ガイド
 
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
WebブラウザでP2Pを実現する、WebRTCのAPIと周辺技術
 
Open stackceilometer
Open stackceilometerOpen stackceilometer
Open stackceilometer
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
 
HttpとTelnetをつなぐ何か
HttpとTelnetをつなぐ何かHttpとTelnetをつなぐ何か
HttpとTelnetをつなぐ何か
 
FM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったFM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作った
 
websocket-survery
websocket-surverywebsocket-survery
websocket-survery
 
WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編
 
Webサーバのチューニング
WebサーバのチューニングWebサーバのチューニング
Webサーバのチューニング
 
WebSocket Chat App Hands On on Microsoft Azure
WebSocket Chat App Hands On on Microsoft AzureWebSocket Chat App Hands On on Microsoft Azure
WebSocket Chat App Hands On on Microsoft Azure
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)
 
VarnishCache入門Rev2.1
VarnishCache入門Rev2.1VarnishCache入門Rev2.1
VarnishCache入門Rev2.1
 
Snowflake on AWSのターゲットエンドポイントとしての利用
Snowflake on AWSのターゲットエンドポイントとしての利用Snowflake on AWSのターゲットエンドポイントとしての利用
Snowflake on AWSのターゲットエンドポイントとしての利用
 
Spring3.1概要 データアクセスとトランザクション処理
Spring3.1概要 データアクセスとトランザクション処理Spring3.1概要 データアクセスとトランザクション処理
Spring3.1概要 データアクセスとトランザクション処理
 
世界一速い他人のふんどしを使ったタイルサーバ
世界一速い他人のふんどしを使ったタイルサーバ 世界一速い他人のふんどしを使ったタイルサーバ
世界一速い他人のふんどしを使ったタイルサーバ
 
Hol012 windowsコンテナー始動
Hol012 windowsコンテナー始動Hol012 windowsコンテナー始動
Hol012 windowsコンテナー始動
 

Recently uploaded

Recently uploaded (11)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

WebSocketプロトコル