問題タブ [varnish]
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.
varnish - Varnish で特定のリクエストに対して req.connection_timeout を設定する方法はありますか?
PHPマシンの前にVarnishのセットアップがあります。ページの 98% で、単一の要求タイムアウト ( req.connect_timeout
VLC で) が機能します。ただし、タイムアウトするまでに最大 3 分かかると予想されるページがいくつかあります。Varnish で特定のリクエストに対して req.connection_timeout を設定する方法はありますか? もしそうなら、VCLで光を見せてください。すべてのページで同じに保ちたいのですreq.connect_timeout
が、これらのいくつかの特定のページではその数を増やします.
java - バックエンド時間ではなく、ワニスのクライアント待機時間を制限する
バックエンドの応答時間を制限することなく、ワニスでクライアントの応答時間を保証するソリューションを探しています。
バックエンドで平均して 1 秒以内に計算する約 100 の異なるリソース (http://host/resource.js?id=1 など) があります。リソースは varnish によってキャッシュされるため、各リソースを多数のクライアントに同時に提供できます。リソースは同期 (ページ ブロッキング) JavaScript として含まれているため、応答は高速 (たとえば 3 秒) で提供されます。クライアントの応答時間を保証したいので、バックエンドのタイムアウトをこの 3 秒に設定する以外に良い解決策は思いつきませんでした。vcl の例は次のようになります。
私の問題は次のとおりです。バックエンドを 5 分間停止して再起動した後 (ワニスが猶予期間内に古いデータを提供している間)、多くの異なるリソース (TTL を超えているが猶予内) がバックエンドで同時に取得されます。これはデータベースに大きな打撃を与え、3 秒以内に配信されるリソースはなく、何もキャッシュされません。
この問題を回避するにはどうすればよいですか? クライアントの応答時間を保証したいが、バックエンドの応答時間を制限したくない. 失敗 (ダミー JavaScript) は一時的に許容されます。リクエストを時間の経過とともに分散させる方法はありますか? (古いデータはエラーより優先されます)。
ありがとう、アイバー
php - この SQL クエリがサーバーを強制終了するのはなぜですか?
VarnishキャッシュサーバーからSQLサーバーでこのクエリを実行すると。
aiki_users
80000 行を超えるテーブルを使用
およびocal_files
30000 行を超えるテーブル。
サーバーを殺します。ajax経由でphpスクリプトから呼び出されます。それを呼び出しているページを閉じる必要があります。
何を返すかはわかりませんが、やりたいことはgroup byとhavingで作成する必要があることは知っていますが、方法がわかりません。
aiki_users テーブルは次のようになります。
サーバーへの正しいアクセス権がありません。ocal_files の定義が表示されませんが、次のようになります。
クエリがどれほど悪いのか、何を返すのか教えてもらえますか?
php - ESI:includeスクリプト内からどのようにCookieを設定しますか?
サーバーにコールバックしてCookieを設定する単一のESIインクルードを使用してVarnishを介してロードされている基本的なPHPページがあります。クッキーはドメインアクセスなどで設定されますが、ESIを介して呼び出された場合、クッキーは設定されません。ESIインクルードパスに直接アクセスする場合、Cookieは問題なく設定されます。VCLがCookieを強制終了する可能性があると考えて、Varnish構成を何もキャッシュしないように設定しました。
これ...
...これを含む...
私はVarnishとESIを初めて使用するので、これが既知の制限(ESIまたはVarnishのESI実装のいずれか)であるかどうか疑問に思い始めていますが、オンラインで問題の説明を見つけることができません。
php - バックエンド TTL が変更されない限り、ワニス キャッシュがセッションで PHP をキャッシュしない
私は Varnish Cache を初めて使用するので、質問があります。助けていただければ幸いです。
私は非常にシンプルで基本的な設定をしていますが、何らかの理由で理解できるように機能していません。
これは、Cookie を使用している PHP ページを Varnish がキャッシュしないことに関連しています。
これが私のセットアップです:
1) 私の default.vcl には単純なバックエンドがあります
2) 次の 2 行のみを含む単純な PHP ファイルがあります。
3) このページを呼び出すと、必要な vcl ルールを追加していないため、正しくキャッシュされません。
4)
したがって、ドキュメントの私の理解に従って、これら2つのルールを追加します
5) PHP ページはまだキャッシュされません。Set-Cookie
FireFox で FireBug を使用しているため、ヘッダーが削除されていることがわかります。
PHP がキャッシュするのは、これをサブ vcl_fetch に追加した場合のみです。
私の質問は、これは正しいですか?
バックエンド応答の ttl を変更する必要があるとは思いませんでした。Cookie の設定を解除するだけで、セッション付きの PHP が強制的にキャッシュされると思いました。
私の完全なデフォルトのvclは次のとおりです。
私の起動コマンドは次のとおりです。
私が呼び出している URL は次のとおりです。
私のindex.phpファイルには次のものしかありません:
これが正しいように見えるか、それとも間違っているかをコミュニティに尋ねたいと思います。基本的に、最終的にページキャッシュをニスに入れるために beresp.ttl = 24h を追加しなければならなかった理由がわかりません。
これはいらないなと思いました。
どんなアドバイスでも大歓迎です。
ありがとうございました!
敬具。
varnish - Varnish - TTL と現在の日付
現在の日付に基づいて TTL を設定したいと思います。
http://site.com/2011/03/の TTL は 5 日間です。
http://site.com/2011/04/の TTL は 1 日です。
現在の日付: 2011 年 4 月 15 日
これはワニスでどのように可能ですか?
どうも
php - Cookie は Varnish キャッシングにどのように影響しますか?
Varnish キャッシングは、Omniture によって設定されたサードパーティの Cookie と、Google アナリティクスによって設定されたファーストパーティの Cookie にどのように影響しますか?
これまでのところ反対意見を見てきましたが、追跡統計は JavaScript によって作成されるため (これは本当です)、リクエストからこれらの Cookie を削除しても GA や Omniture には影響しないという人もいます。
ただし、ここでは、これらのソフトウェアがさまざまな Cookie を設定して定期的な訪問者を追跡していると言っているため、これらの Cookie をリクエストから削除すると、基本的にすべてのユーザーが新しい訪問者としてカウントされます。
ユーザーが毎回新規訪問者としてカウントされないようにしたい。これらの JavaScript 埋め込みに、ページが初めての訪問者または定期的な訪問者に提供されているかどうかを計算する機能があるかどうかもわかりません. 公式の GA または Omniture ドキュメントへのリンクを歓迎します。
php - Varnish Cache は ESI インクルードを行いません
非常に単純な Varnish Cache ESI テストでさえ機能しないという問題があります。
試行錯誤した後、私はここで尋ねると思いました。
基本的に、ESI ファイルは含まれません。インクルードせずにHTMLを返すだけです。
これが私のワニス開始コマンドです:
私がテストしているURLは次のとおりです。
私の vcl ルール:
1) デフォルト.vcl
私のサンプルテストesiコード
2) test.php
esi への php インクルード
3) esi_1.php
上記の vcl ルールのさまざまなバリエーションを試しました。
すべてが機能しません。どこが間違っているのかわかりませんか?
アドバイス/ヘルプをいただければ幸いです。
ありがとうございました。
varnish - varnishadm削除構成
ワニスにロードした構成を削除できますか?
私は持っています:
構成を上書きしようとすると、「エラーコード106」が表示されます
リスト内の構成を削除できますか?
memcached - ワニスとアドセンス
Varnish を使用して、アドセンスを含む動的 (読み取り専用) ページを提供することは解決策ですか? または、代わりに Memcached を使用してデータベース クエリをキャッシュする必要がありますか?