現在、複数のアプリケーション間のhttpベースのデータ転送を最適化しようとしています。最初にダウンロードしてからポストリクエストを作成する現在のアプローチでは、明らかに余分なIO /メモリの負荷とレイテンシが追加されますが、これを回避したいと思います。
すべての中核的な質問:
HTTP POST要求で「Content-Length」ヘッダーを送信する必要がありますか?IIRC、HTTP 2616はオプションであると宣言しますが、この時点でアプリケーションが実際にどのように動作するかわかりません。
オプションの意味に依存します。あなたが好きならいつでもヘッダーを省略することができるという意味であれば、いいえ、それはオプションではありません。 HTTP仕様には、そのヘッダーをいつ使用するかという非常に具体的なルールがあります。長さがわからない場合は、データを送信するさまざまな方法があります。たとえば、チャンクエンコーディング。