SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Downloaden Sie, um offline zu lesen
HTTP/2  ⼊入⾨門
⽯石澤  基  
CMO室  エンジニア
この資料料の内容
• HTTP/2  の歴史  
• HTTP/2  の特徴  
• HTTP/2  の最新動向
HTTP/2  の歴史
現在までの流流れ
2012/01:  IETF  HTTPbis  WGで次世代のHTTPの話が出始める  
2012/06:  HTTP/2の議論論を開始するための草案が提出される  
2012/11:  SPDYを議論論の開始点として策定が始まる  
2013/01:  最初の草案がリリースされる  
2013/08:  最初の実装向け草案がリリースされる  
2014/05:  <今はココ!>  
2014/07:  最終草案リリース  (WGラストコール)  (予定)
SPDY?
Webページの読み込みレイテンシを削減することを目標として、
Googleが開発している実験用の転送プロトコルです。
!
Googleは自社サイトとChromeにSPDYを適用することで、プロトコル
の評価を進めていました。そのような実績が高く評価され、HTTP/2の
議論の出発点として、SPDYが採用されました。
!
現在では、TwitterやFacebookといったサービスをはじめ、Firefox、
Internet ExplorerといったブラウザもSPDYをサポートしています。
よくある質問
現在のHTTPにあるような、リクエストやレスポンス、  
ヘッダーなどの仕組みそのものに変更更はありますか?
?
よくある質問
いいえ、変更更はありません。
!(一部の例外は除く)
よくある質問
This document addresses these issues by
defining an optimized mapping of HTTP's
semantics to an underlying connection.
“
― HTTP/2 Draft, Introduction
HTTP/2  の⽬目的
HTTPの構文に最適化された転送手段を提供することで、従来のHTTPで
おきていたパフォーマンス上の問題を解決します。
• よりスケーラブルに処理理可能なメッセージ構造の提供  
• 単⼀一の接続上で複数のリクエストを送信する仕組みの提供  
• 冗⻑⾧長なヘッダーに対する効率率率のよい符号化⽅方式の提供
HTTP/2  の特徴
接続の開始
ALPN  
https://  から始まるURLで使⽤用します。SSLハンドシェイクの際にアプ
リケーションが使⽤用するプロトコルを決定します。  
!
HTTP  Upgrade  
http://  から始まるURLで使⽤用します。最初にHTTP/1.1のリクエストを
送信してから、以降降の通信をHTTP/2に切切り替えます。
HTTP/2では、今まで通り http:// および https:// のURLを使用します。
そのため、HTTP/2の接続を開始するためには、プロトコルを切り替える
仕組みが必要となっています。
Application  Layer  Protocol  Negotiation  (ALPN)
SSL  ハンドシェイク
クライアント サーバー
ClientHello
ServerHello
ALPN Extension
HTTP/1
SPDY/3
h2
ALPN Extension
Selected Protocol
h2
HTTP  Upgrade
HTTP  Upgrade
クライアント サーバー
リクエスト
レスポンス
GET /index.html HTTP/1.1
Host: www.yahoo.co.jp
Connection: Upgrade, HTTP2-Settings
Upgrade: h2c
HTTP2-Settings: 4389978938ab379
HTTP/1.1 101 Switching Protocols
Connection: Upgrade
Upgrade: h2c
!
<HTTP/2 データ....>
バイナリフレーム
HTTP/1.xまでは全てのデータがテキストで送信されていましたが、
HTTP/2では全てバイナリフレームと呼ばれる単位に分割されます。
バイナリフレームの種類
フレームタイプ 概要
DATA リクエストボディや、レスポンスボディを転送するフレーム
HEADERS 圧縮済みのHTTPヘッダーを転送するフレーム
PRIORITY ストリームの優先度を変更するフレーム
RST_STREAM ストリームの終了を通知するフレーム
SETTINGS 接続に関する設定を変更するフレーム
PUSH_PROMISE サーバーからのリソースのプッシュを通知するフレーム
PING 接続状況を確認するフレーム
GOAWAY 接続を終了するフレーム
WINDOW_UPDATE フロー制御ウインドウを更新するフレーム
CONTINUATION HEADERSフレームやPUSH_PROMISEフレームの続きのデータを転送するフレーム
ALTSVC 代替サービスの情報を提供するフレーム
BLOCKED 送信がブロックされていることを通知するフレーム
バイナリフレーム
POST /upload HTTP/1.1
Host: www.yahoo.co.jp
Content-Type: image/jpeg
Content-Length: 123
!
{バイナリデータ}
HTTP/1.1  リクエスト HTTP/2  フレーム
HEADERS
:method:  POST  
:scheme:  http  
:authority:  www.yahoo.co.jp  
:path:  /upload  
content-‐‑‒type:  image/jpeg  
content-‐‑‒length:  123
DATA
{バイナリデータ}
バイナリフレーム
HTTP/1.1 200 OK
Content-Type: image/jpeg
Content-Length: 123
!
{バイナリデータ}
HTTP/1.1  レスポンス HTTP/2  フレーム
HEADERS
:status:  200  
content-‐‑‒type:  image/jpeg  
content-‐‑‒length:  123
DATA
{バイナリデータ}
バイナリフレーム
フレームヘッダー
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!
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!
| R | Length (14) | Type (8) | Flags (8) |!
+-+-+-----------+---------------+-------------------------------+!
|R| Stream Identifier (31) |!
+-+-------------------------------------------------------------+!
| Frame Payload (0...) ...!
+---------------------------------------------------------------+
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!
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+!
| Pad High? (8) | Pad Low? (8) |!
+-+-------------+---------------+-------------------------------+!
|E| Stream Dependency? (31) |!
+-+-------------+-----------------------------------------------+!
| Weight? (8) |!
+---------------+-----------------------------------------------+!
| Header Block Fragment (*) ...!
+---------------------------------------------------------------+!
| Padding (*) ...!
+---------------------------------------------------------------+
HEADERSフレーム  ペイロード
クライアント サーバー
HTTP/2  接続
ストリーム  #1
ストリーム  #3
ストリーム  #5
レスポンス    
リクエスト    
リクエスト    
ストリームによる多重化
ストリームによる多重化
HTTP/1.x
クライアント サーバー
HTTP/1.x  (パイプライン)
クライアント サーバー
リクエスト  #1
レスポンス  #1
レスポンス  #2
リクエスト  #2
リクエスト  #1
リクエスト  #2
リクエスト  #3
レスポンス  #1
レスポンス  #2
レスポンス  #3
ストリームによる多重化
HTTP/2
クライアント サーバー
リクエスト  #1
リクエスト  #2
リクエスト  #3
レスポンス  #1
レスポンス  #2
レスポンス  #3
ヘッダー圧縮
HTTP  1.xでは、UserAgentやCookieといったHTTPヘッダーが何度度も同
じ内容で送信されており、オーバーヘッドが⽣生じていることが分かって
います。  
!
SPDYではHTTPヘッダーをgzip圧縮することで、これに対処しました。
しかし、CRIMEと呼ばれる攻撃⼿手法が⾒見見つかったため、圧縮率率率を下げざ
るをえなくなってしまいました。  
!
そこで、HTTP/2では、ヘッダーの差分だけを送るアルゴリズムを使っ
たHPACKと呼ばれるヘッダー圧縮機構を採⽤用しています。
HPACK
前回送信したヘッダー名/値ペアのセットです。
クライアントやサーバーは、ヘッダーの差分を計算するために接続ごと
にリファレンスセットを保持します。
Reference  Set
よく送信されるヘッダー名/値ペアにIDを設定したものを管理するテーブ
ルです。クライアントとサーバーの両方で保持されます。送信するヘッ
ダーがこのテーブルに含まれていた場合は、設定されたIDを使用してヘッ
ダーを送信することができます。
Static  Table
HPACKで使われる⽤用語を簡単に理理解しておきましょう。
HPACK
:method: GET
:scheme: http
:path: /
:authority: www.yahoo.co.jp
user-agent: chrome
送信するヘッダー  (1回⽬目)
エンコード済みヘッダー
1
2
3
4: www.yahoo.co.jp
user-agent: chrome
③エンコード
Reference  Set
なし
①差分確認
Static  Table
ID ヘッダー名 値
1 :method GET
2 :scheme http
3 :path /
4 :authority
②検索索
HPACK
:method: GET
:scheme: http
:path: /css/yahoo.css
:authority: www.yahoo.co.jp
user-agent: chrome
custom: yahoo
送信するヘッダー  (2回⽬目)
エンコード済みヘッダー
3: /css/yahoo.css
custom: yahoo
③エンコード
Static  Table
ID ヘッダー名 値
1 :method GET
2 :scheme http
3 :path /
4 :authority
②検索索
Reference  Set
①差分確認
:method: GET
:scheme: http
:path: /
:authority: www.yahoo.co.jp
user-agent: chrome
サーバープッシュ
あるレスポンスに必要なリソースを事前にサーバーから送信するための仕
組みです。事前に送られたリソースはクライアント側でキャッシュされ
るため、クライアントはリクエストを送信する必要がなくなります。
クライアント サーバー
レスポンス
リクエスト
サーバープッシュ  #2
サーバープッシュ  #1
index.html  をください
index.html  を表⽰示するには、
yahoo.css  が必要だから先に送るね
index.html  を表⽰示するには、
logo.png  も必要だから先に送るね
index.html  を送るね
サーバープッシュの活⽤用例例
トランシーバーアプリの「Voxer」ではSPDYのサーバープッシュの機能
を活用して、音声メッセージのプッシュを実現しているそうです。
クライアントA サーバー
レスポンス
リクエスト
サーバープッシュ
Aさんに  
メッセージを送信
クライアントB
リクエスト
私宛のメッセージが  
あればプッシュして  
ください
Bさんからの  
メッセージを受信
送信完了了!
ストリーム優先度度
特定のリソースを優先的に取得したいような場合、クライアントはフレー
ムに優先度情報を含めることで、サーバーの処理順序を制御することが
できる可能性があります。
クライアント サーバー
レスポンス  #2
リクエスト  #1
2つめのリクエストを優先で  
処理理してください。
2つめのリクエストを優先した
ので先に返します。
リクエスト  #2  (+優先度度情報)
レスポンス  #1
HTTP/2  の最新動向
HTTP/2  に対応した実装
HTTP/2プロトコルを実装したライブラリは既に複数公開されています。
これらのライブラリを使用すれば、HTTP/2の検証やテストをはじめる
ことができます。
実装 言語 ロール 対応する草案
nghttp2 C クライアント、サーバー、プロキシ Draft 12
http2-katana C# サーバー Draft 09
node-http2 Node.js サーバー、クライアント Draft 12
Netty Java サーバー、クライアント Draft 12
Wireshark C その他 Draft 12
Okhttp Java クライアント (Android) Draft 12
curl / libcurl C クライアント Draft 12
各社の動向
実装に積極的に参加しています。HPACKのJava実装を公開したり、サー
ビスの本番環境ですでにHTTP/2をデプロイするなど、積極的にパフォー
マンスなどを調査しています。
Twitter
仕様策定と実装で積極的に参加しています。C#で実装されたKatanaサー
バーのHTTP/2対応をしたり、IEについても「HTTP/2に備える」とブロ
グで発信するなど、積極的にサポートしていくようです。
Microsoft
仕様策定と実装で積極的に参加しています。最新のドラフト版に対応し
たFirefoxが開発されており、実際に使って試すことができます。
Mozilla
参考情報
http://www.oreilly.co.jp/books/9784873116761/
Enjoy  HTTP/2  :)

Weitere ähnliche Inhalte

Was ist angesagt?

【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮Hibino Hisashi
 
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話Kazuho Oku
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装infinite_loop
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティスAmazon Web Services Japan
 
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -onozaty
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションMasahiko Sawada
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Etsuji Nakai
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021Hiroshi Tokumaru
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本kazuki kumagai
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)NTT DATA Technology & Innovation
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能Kohei Tokunaga
 
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM LoggingYuji Kubota
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法Tetsutaro Watanabe
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれKumazaki Hiroki
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組みJavaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組みChihiro Ito
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウトMasahiko Sawada
 

Was ist angesagt? (20)

【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
 
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM Logging
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組みJavaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 

Ähnlich wie HTTP/2 入門

Amalgam8 application switch for cloud native services
Amalgam8   application switch for cloud native servicesAmalgam8   application switch for cloud native services
Amalgam8 application switch for cloud native servicesTakehiko Amano
 
QUIC標準化動向 〜2017/7
QUIC標準化動向 〜2017/7QUIC標準化動向 〜2017/7
QUIC標準化動向 〜2017/7Kazuho Oku
 
DB tech showcase_tokyo2018_LOCONDO
DB tech showcase_tokyo2018_LOCONDODB tech showcase_tokyo2018_LOCONDO
DB tech showcase_tokyo2018_LOCONDOShinya Sugiyama
 
JOSUG 34th Meetup
JOSUG 34th Meetup JOSUG 34th Meetup
JOSUG 34th Meetup irix_jp
 
Locondo 20190215@ec tech_group
Locondo 20190215@ec tech_groupLocondo 20190215@ec tech_group
Locondo 20190215@ec tech_groupShinya Sugiyama
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜Kaoru Maeda
 
ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会Tomoya Hibi
 
猿でもわかる DevOps
猿でもわかる DevOps猿でもわかる DevOps
猿でもわかる DevOpsTsuyoshi Miyake
 
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Preferred Networks
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Yuki Suga
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会IoTビジネス共創ラボ
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会IoTビジネス共創ラボ
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側Yusuke Naka
 
openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713Takehiro Kudou
 
L2 over L3 ecnaspsulations
L2 over L3 ecnaspsulationsL2 over L3 ecnaspsulations
L2 over L3 ecnaspsulationsMotonori Shindo
 
Sphinx Tutorial at BPStudy#30
Sphinx Tutorial at BPStudy#30Sphinx Tutorial at BPStudy#30
Sphinx Tutorial at BPStudy#30Yoshiki Shibukawa
 
VMware NSXがサポートするトンネル方式について
VMware NSXがサポートするトンネル方式についてVMware NSXがサポートするトンネル方式について
VMware NSXがサポートするトンネル方式についてMotonori Shindo
 
PHP, Now and Then 2011
PHP, Now and Then 2011PHP, Now and Then 2011
PHP, Now and Then 2011Rui Hirokawa
 
Lagopusで試すFW
Lagopusで試すFWLagopusで試すFW
Lagopusで試すFWTomoya Hibi
 

Ähnlich wie HTTP/2 入門 (20)

http2 最速実装 v2
http2 最速実装 v2 http2 最速実装 v2
http2 最速実装 v2
 
Amalgam8 application switch for cloud native services
Amalgam8   application switch for cloud native servicesAmalgam8   application switch for cloud native services
Amalgam8 application switch for cloud native services
 
QUIC標準化動向 〜2017/7
QUIC標準化動向 〜2017/7QUIC標準化動向 〜2017/7
QUIC標準化動向 〜2017/7
 
DB tech showcase_tokyo2018_LOCONDO
DB tech showcase_tokyo2018_LOCONDODB tech showcase_tokyo2018_LOCONDO
DB tech showcase_tokyo2018_LOCONDO
 
JOSUG 34th Meetup
JOSUG 34th Meetup JOSUG 34th Meetup
JOSUG 34th Meetup
 
Locondo 20190215@ec tech_group
Locondo 20190215@ec tech_groupLocondo 20190215@ec tech_group
Locondo 20190215@ec tech_group
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
 
ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会
 
猿でもわかる DevOps
猿でもわかる DevOps猿でもわかる DevOps
猿でもわかる DevOps
 
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側
 
openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713
 
L2 over L3 ecnaspsulations
L2 over L3 ecnaspsulationsL2 over L3 ecnaspsulations
L2 over L3 ecnaspsulations
 
Sphinx Tutorial at BPStudy#30
Sphinx Tutorial at BPStudy#30Sphinx Tutorial at BPStudy#30
Sphinx Tutorial at BPStudy#30
 
VMware NSXがサポートするトンネル方式について
VMware NSXがサポートするトンネル方式についてVMware NSXがサポートするトンネル方式について
VMware NSXがサポートするトンネル方式について
 
PHP, Now and Then 2011
PHP, Now and Then 2011PHP, Now and Then 2011
PHP, Now and Then 2011
 
Lagopusで試すFW
Lagopusで試すFWLagopusで試すFW
Lagopusで試すFW
 

Mehr von Yahoo!デベロッパーネットワーク

ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかYahoo!デベロッパーネットワーク
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2Yahoo!デベロッパーネットワーク
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcYahoo!デベロッパーネットワーク
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo!デベロッパーネットワーク
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcYahoo!デベロッパーネットワーク
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtcYahoo!デベロッパーネットワーク
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcYahoo!デベロッパーネットワーク
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcYahoo!デベロッパーネットワーク
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcYahoo!デベロッパーネットワーク
 

Mehr von Yahoo!デベロッパーネットワーク (20)

ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
 
継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator
 
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
 
オンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッションオンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッション
 
LakeTahoe
LakeTahoeLakeTahoe
LakeTahoe
 
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
 
Persistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability FeaturePersistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability Feature
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
 
eコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtceコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtc
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
 
ビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtcビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtc
 
サイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtcサイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtc
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
 
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtcYahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
 
「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
 

HTTP/2 入門