2

ワニスのパージに問題があります:

私たちのアプリケーションは非常に動的です。したがって、オブジェクト A のイベントは、オブジェクト A の情報がすべてのページに存在するため、10.000 のパージを生成します。

オブジェクト A は統計販売者で、ページは広告ページです。

curl を使用して php コードから varnish への非同期 http PURGE 呼び出しによってこれを管理しています。

したがって、10000回のhttp呼び出しが発生します URLを計算できません(したがって、正規表現はオプションではありません)

みなさんにお聞きしたいのですが、ワニスでバッチパージ(HTTPインターフェース)を行う可能性はありますか?

そうでない場合、モデルとイベントがページに多くの影響を与える場合に、非常に動的なアプリケーションでテストして機能するオプションは何ですか。

よろしくお願いします

4

1 に答える 1

2

パージを実行するvarnishadmことが最善の策です。SSH を介してコマンドをトンネリングするか (リモートの Varnish サーバーを扱っていると仮定)、Web サーバーから Varnish サーバーへのリモート アクセスを許可することができます。

を使用してバッチ パージを実行する独自のシェル スクリプトを簡単に作成できます。varnishadmまたは、探していることを正確に実行するために作成された Ruby ベースのパージャーであるThinnerを参照することもできます。

すでに検討されている可能性が高い明らかな代替手段は、アプリケーションを書き直してURL またはカスタム ヘッダー (たとえば、 ) にオブジェクト AX-Object: Aを含めることです。そのため、そのヘッダーに基づいて禁止を行うことができます。

sub vcl_recv {
  if (req.request == "BAN") {
    ban("obj.http.x-object == " +  req.http.x-object);
  }
}
于 2013-03-17T10:18:39.070 に答える