問題タブ [http2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
http2 - HTTP/2 経由で通信する nghttpx は、HTTP/1.1 よりも多くのネットワーク トラフィックをもたらす
私はこれを設定しています:
[Web サイト]--WAN--[Squid]---[nghttpx #2]--WAN--[nghttpx #1]---[Web ブラウザ]
nghttpx #1 は HTTP/1.1 経由でローカル Web ブラウザーからの HTTP プロキシ リクエストを受け入れ、Web サイトを要求する nghttpx #2 への HTTP/2 接続を確立し、コンテンツは同じパス経由で返されます。目標は、ネットワーク トラフィックを維持するために、nghttpx #1 を nghttpx #2 に接続する WAN 経由で HTTP/2 接続を確立することです。
nghttpx #1 は次のように実行されています。
nghttpx -p -f127.0.0.1,8080 -b nghttpx #2 IP ,8443 --backend-no-tls --log-level=INFO
nghttpx #2 は次のように実行されています。
nghttpx -s -f'*,8443' -b127.0.0.1,12345 --backend-no-tls --frontend-no-tls --log-level=INFO
ポート 12345 は Squid です。
ここで、nghttpx #1 と Web ブラウザーが/usr/bin/netstat -i -b -n -I interfaceを介して実行されている WAN ネットワーク インターフェイスのバイト数を測定します。プロキシなしで直接アクセスしている間の入力バイト。Web サイトをロードするのに約 150 kB を測定します。この nghttpx チェーンでは、約 170 kB です。HTTP/2 を使用しているときに、実際により多くのネットワーク トラフィックが発生していることに非常に驚いています。
質問: HTTP/2 は、圧縮によるトラフィックの節約につながるべきではありませんか? 私は何を間違っていますか?
ありがとうございました!
apple-push-notifications - Swift2 で HTTP2 経由で APNS サーバーと通信する
WWDC2015 のセッションで導入された Apple の新しい APNS プロバイダー API の使用方法を知っている人はいますか? 私のテストでは、PushMeBaby (github のオープンソース プッシュ サーバー) を使用しました。しかし、この小さなアプリは今後機能しなくなります。誰かが Swift で HTTP2 クライアントを実装しましたか?
ios - NSURLSession は異なるセッションからの HTTP/2 リクエストを多重化しますか?
アプリが同じサーバー (HTTP/2 をサポートする) からデータを要求する 2 つの NSURLSession オブジェクトを作成する場合、両方のセッションからの要求は多重化されますか?
websocket - HTTP/2 を使用する場合、WebSocket よりも SSE + REST を優先する必要がありますか?
Websocket を使用する場合、双方向通信専用の接続が必要です。http/2 を使用すると、サーバーによって 2 番目の接続が維持されます。
その場合、SSE と通常の http リクエストを使用すると、単一の HTTP/2 接続を介した双方向通信の利点が得られるため、websocket を使用すると不必要なオーバーヘッドが発生するようです。
どう思いますか?
ios - iOS9 NSURLSession HTTP/2
wwdc viedo [[nsurlsession によるネットワーク化]] では、NSURLSession は HTTP/2 プロトコルを自動的にサポートすると述べています。
しかし、このコードを使用すると、
HTTP/2 は使用しません。
しかし、このコードでは大丈夫です
ネットワークは問題ありません。http/2 を使用しています
理由を知っている人はいますか?
.net - System.Net.WebClient で http2 を有効にする
で http2 サポートを有効にすることはできSystem.Net.WebClient
ますか? もしそうなら、どうすればこれを有効にできますか?
html - Netty HTTP2 実装によるサーバー送信イベントのサポート
Netty 4.1-Beta6 バージョンを使用しています。
HTTP2 サーバーが既存の接続で HTTP2 クライアントにイベントをプッシュできるユース ケースをサポートしたいと考えています。これは、クライアントに伝達する必要があるクラウドからのアラームまたはタイマー イベントである可能性があります。
「Server Sent Event」機能を使用することを考えています。Netty で HTTP2 を使用してこれを行うことは可能ですか? 「最終フレーム」フラグを false に設定してデータ フレームを送信することにより、http2 ストリームを開いたままにする必要がありますか? これを試してみると、コンテンツがバッファリングされることがわかりました。データフレームは、書き込み時にクライアントに到達しません。DefaultHttp2Encoder を使用しています。「Transfer-Encoding」ヘッダーも「chunked」に設定してみました。
関連する質問 - ストリームが「オープン」状態になると、HTTP2 は双方向データ フレームを許可しますか? これは、サーバーがクライアントにデータを要求できる必要があり、クライアントが同じストリーム内のデータで応答できる必要があるという考え方です (ストリームが確立されると、クライアント/サーバーの役割が逆転します)。これは可能ですか?
助けてくれてありがとう。
java - Jetty を使用した HTTP/2 の優先度と依存関係のテスト
優先度と依存関係:
ここでは、簡単なテストを行いました。しかし、結果はあまり良くないようです。同じ接続でforループで100回リクエストしてみました(リクエストURLは同じです、この部分が結果に影響するのか気になります)。
インデックスが i の場合、要求 stream_id は i であり、依存する stream_id は 100+i です。仮定が正しければ、101 から 200 までの stream_id がないため、リクエストは応答を取得できません。
しかし、結果は、依存関係を設定する場合と設定しない場合に違いがないことを示しています。タイムアウトや待機なしで、応答データ フレームを 1 つずつ取得しました。また、他の関連するテストもいくつかあります。開始点は、他のストリームに依存するストリームを最初に送信し、依存するストリームを後で送信できるようにすることです。しかし、結果は同じです。結果の理由はまだ考え中です。誰でも私を助けることができますか?どうもありがとう。
ここにコード:
okhttp - NPN ネゴシエーションを介して OkHttp で http/2 リクエストを送信できますか?
Android 5.0 以降では、OkHttp が ALPN 経由で h2 をサポートしていることに気付きました。
ある記事から、http/2 リクエストに NPN ネゴシエーションを使用できることを知りました。
NPN ネゴシエーションを介して OkHttp で http/2 リクエストを送信できますか?
Android 4.1+でh2をサポートし、ネットワークパフォーマンスを向上させることができます:-D