2016-09-07 12 views
1

をコードチャンク...(それが可能だ、右?)ワニスリターン(提供/フェッチ)VS私はチャンクするワニスキャッシュ応答を取得しようとしている

私は次のシナリオがあります。

を1 - キャッシュは

2、清潔行ってもいい(サービスワニスの再起動)である - 初めて

をwww.mywebsite.com/pageにアクセス210

(何のコンテンツの長さが返されない、とチャンキングは、そこに素晴らしいです!)

3 - 次回は、私はそれがキャッシュされます(簡単なリロードのような)ページにアクセス...そして今、私が取得この:

2+ time access headers

(!今私たちは、コンテンツの長さを持っている...何も素晴らしいではありません:(チャンクがないことを意味する)

いくつかのニスのドキュメント/ブログ(およびこれを読んだ後:http://book.varnish-software.com/4.0/chapters/VCL_Basics.html)は、最後の2つの返品があるようです:返品(取得)または返品(納品)

リターン(フェッチ)を強制すると、チャンクエンコードが機能しますが、リクエストがキャッシュされないということも意味します。 キャッシュは正しく返されますが、コンテンツ長のヘッダーが追加されます。

私は私のdefault.vclファイルにこれらを追加しようとしました:転送エンコーディングで作業ニスキャッシュを持っているか

set beresp.do_esi = true; (at vcl_backend_response stage) 

unset beresp.http.content-length; (at different stages, without success) 

..だから:チャンク?

ありがとうございました!

答えて

0

チャンクされたメッセージを送信する理由はありますか?チャンクされた転送エンコーディングは、コンテンツの長さが事前にわかっていない場合には不便な回避策です。実際にここで起こっているのは、Varnishがgzipで圧縮したコンテンツの長さを最初にキャッシュした後に計算できるため、回避策を使用する必要はありません!このシナリオでは、パフォーマンスの向上を見逃すことはありません。

関連する問題