タグ付けされた質問 「varnish」

Varnishは、Linux / Unixシステム用の高性能リバースプロキシおよびロードバランサーパッケージです。


2
ニスデーモンが構成されたポートで待機していない
私はubuntu 16.04にワニスをインストールしようとしています、 私はいくつかの記事を読みましたが、どれも機能していません。私が読んだことから、ubuntu 15.04以降、(systemdのため)ワニスの構成方法が変更されました。 今私は実際の混乱を持っていますがうまくいきません: / etc / default / varnish: DAEMON_OPTS="-a :80 \ -T localhost:6082 \ -f /etc/varnish/default.vcl \ -S /etc/varnish/secret \ -s malloc,256m" /etc/varnish/default.vcl(通常、127.0.0とポート8080を指すホストを指しますが、デバッグ目的で外部ドメインに変更しました)vcl 4.0; # Default backend definition. Set this to point to your content server. backend default { .host = "www.varnish-cache.org"; .port = "80"; } /etc/apache2/ports.conf …

5
クラッシュしたプロセスを再起動する簡単な方法は?
ウェブサーバーで実行されているいくつかのプロセスを監視する必要があります。なんらかの理由で、現在、ワニスは毎日1〜2回クラッシュしています。monitを使用してワニスを自動的に再起動すると思われますが、機能しません。これがVarnishのmonit.confエントリです。 check process varnish with pidfile /var/run/varnish.pid start program = "/etc/init.d/varnish start" with timeout 60 seconds stop program = "/etc/init.d/varnish stop" if failed host <my server ip> port 80 protocol http and request "/blank.html" then restart if 3 restarts within 5 cycles then timeout group server ログファイルは、ワニスの実行が停止した後、再試行がすべて失敗したことを示しています。その後、最終的にmonitはニスの監視を停止します。 誰でもこれを修正する方法について提案がありますか?あるいは、クラッシュしたプロセスを自動的に監視して再起動する他の簡単な方法を提案できますか?ありがとう!

7
ワニス-> Nginx-> Apacheは良い考えですか?
新しいWebサーバーのアーキテクチャについて考えています。リバースプロキシとしてNginxの前にキャッシュとしてVarnishを用意し、すべての重い作業のためにApacheの前に静的ファイルを提供することは良い考えでしょうか? Railsアプリケーションでphpとrubyを実行します。 他の2つのプロセスを介してapacheにphpリクエストを渡すオーバーヘッドが多すぎますか? どうもありがとう!

1
Varnish 4から上位のMISSESとHITSを取得するためのコマンドは何ですか?
仕事ではCentOSでVarnish 3を使用していますが、自宅ではUbuntu 14.04でVarnish 4を使用しています。 仕事では、次のコマンドを使用します。 Top hits: varnishtop -i rxurl Top Misses: varnishtop -i txurl ただし、何らかの理由でVarnish 4 Ubuntuでは動作しません。 Varnish 4のこれらのコマンドに相当するものは何ですか?
10 varnish 

1
Varnishはストレージの不足にどのように対処しますか?
私は多かれ少なかれデフォルトのインストールでVarnish 3.0.3(この記事の執筆時点で最新)を使用しており、次のストレージを使用しています。 # # Cache file location VARNISH_STORAGE_FILE=/var/lib/varnish/varnish_storage.bin # # # Cache file size: in bytes, optionally using k / M / G / T suffix, # # or in percentage of available disk space using the % suffix. VARNISH_STORAGE_SIZE=4000M # # # Backend storage specification VARNISH_STORAGE="file,${VARNISH_STORAGE_FILE},${VARNISH_STORAGE_SIZE}" # キャッシュできるページのほとんどは、TTLが非常に長くなります。私が作業しているサイトは巨大で、数百万のページがあり、上記のストレージサイズ(4 GB)に収まらない可能性があります。 …
9 cache  varnish  ttl 

4
Varnishで静的ファイルをキャッシュする理由、渡さない理由
私はnginx / php-fpm / varnish / wordpressとamazon s3を実行するシステムを持っています。 今、私はシステムのセットアップ中に多くの設定ファイルを見てきました、そしてそれらのすべてで私はこのようなものを見つけました: /* If the request is for pictures, javascript, css, etc */ if (req.url ~ "\.(jpg|jpeg|png|gif|css|js)$") { /* Remove the cookie and make the request static */ unset req.http.cookie; return (lookup); } なぜこれが行われるのかわかりません。ほとんどの例では、NginXをウェブサーバーとして実行しています。ここで問題は、なぜこれらの静的ファイルをキャッシュするためにワニスキャッシュを使用するのかということです。 php-fpm / mysqlがそれほどヒットしないように、動的ファイルのみをキャッシュする方が私にはずっと理にかなっています。 私は正しいですか、ここで何か不足していますか? 更新 与えられた答えに基づいて質問に情報を追加したいと思います。 コンテンツが実際に大きく変化する動的なWebサイトを持っている場合、キャッシュは意味がありません。しかし、たとえば静的なWebサイトにWordPressを使用している場合、これは長期間キャッシュされる可能性があります。 とはいえ、私にとってより重要なのは静的な同意です。さまざまなキャッシュアプ​​リとウェブサーバーアプリでいくつかのテストとベンチマークへのリンクを見つけました。 http://nbonvin.wordpress.com/2011/03/14/apache-vs-nginx-vs-varnish-vs-gwan/ …

2
ニスヒストグラムの読み方
ワニスのヒストグラム/グラフはどのように読み取られますか?X軸は対数目盛であることを理解しています。 具体的には: 9個の「|」またはキャッシュヒットがで発生しy=1e-4ています。それぞれの「|」は何ですか 参照する?ページ?ファイル? これら9つの「|」の左側にヒットが少なく、右側にヒットがいくつかあります。それらは何ですか?彼らはより長い(右)とより短い(左)の時間を要しましたか? 上部にあるのは何1:2ですか?そしてn = 134 また、キャッシュヒットは常にキャッシュミスの左側にあります。つまり、1e-xキャッシュミスは+指数を下回っていますが、物事の側にあります。その意味は何ですか?その時、もしそうなら、何の時...? どうもありがとう! X軸 1:2, n = 134 hostname # # # # # | # | # | # | # | ### | ### || ### ## ||| ### ## # # ## |||| #### #### ## ## # ### +---------+---------+---------+---------+---------+---------+---------+---------+--------- …
9 varnish  graph 

3
新しいデータをフェッチしている間に、ワニスがキャッシュから古いデータを送信できるようにしますか?
動的に生成されたページ(PHP-FPM、NGINX)をキャッシュし、その前にワニスを付けています。これは非常にうまく機能します。 ただし、キャッシュタイムアウトに達すると、次のようになります。 新しいクライアントリクエストページ ワニスはキャッシュタイムアウトを認識します クライアントが待機する ワニスはバックエンドから新しいページを取得します varnishは新しいページをクライアントに配信します(また、すぐに取得する次のリクエストのためにページもキャッシュされます) 私がしたいのは: クライアントリクエストページ ワニスはタイムアウトを認識します ニスは古いページをクライアントに配信します ワニスはバックエンドから新しいページを取得してキャッシュに入れます 私の場合、特に数分からのキャッシュタイムアウトについて話しているときではなく、古い情報が非常に大きな問題を抱えているサイトではありません。 しかし、私はユーザーを罰せずに列に並んで待って、すぐに何かを届けたいとは思いません。それは何らかの方法で可能ですか? 例として、1分間キャッシュするように構成された私のサーバーに対してsiegeを5分間実行した場合の出力例を次に示します。 HTTP/1.1,200, 1.97, 12710,/,1,2013-06-24 00:21:06 ... HTTP/1.1,200, 1.88, 12710,/,1,2013-06-24 00:21:20 ... HTTP/1.1,200, 1.93, 12710,/,1,2013-06-24 00:22:08 ... HTTP/1.1,200, 1.89, 12710,/,1,2013-06-24 00:22:22 ... HTTP/1.1,200, 1.94, 12710,/,1,2013-06-24 00:23:10 ... HTTP/1.1,200, 1.91, 12709,/,1,2013-06-24 00:23:23 ... HTTP/1.1,200, 1.93, 12710,/,1,2013-06-24 00:24:12 ... …

2
開いているポートが不足しているワニス、多数のSYN_SENT接続
最近、Varnish(3x)-> Apache(3x)のセットアップで問題が発生し、SYN_SENT接続が急増しました。 スパイク自体は、サイトにヒットする新しいトラフィックの量が原因であり(どのような種類のDDOSでもありません)、ワニスマシンがバックエンドサーバーにトラフィックを転送するときに問題が発生しているようです(Apacheトラフィックのドロップは、ワニスのスパイクと相関しています) )、使用可能なポートプールをで輻輳させますSYN_SENT。 キープアライブはApache(15s)で有効になっています。 どちらの側に障害がありますか?トラフィック量は重要ですが、そのようなセットアップ(3x Varnishフロントエンドマシン、3xバックエンドApacheサーバー)が停止することは決してありません。 助けてください。 ファイアウォールを介した接続のMuninス​​クリーンショットはこちらです。 ワニス ~$ netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c 9 CLOSE_WAIT 12 CLOSING 718 ESTABLISHED 39 FIN_WAIT1 1714 FIN_WAIT2 76 LAST_ACK 12 LISTEN 256 SYN_RECV 6124 TIME_WAIT /etc/sysctl.conf(ワニス) net.ipv4.netfilter.ip_conntrack_max = 262144 net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60 net.ipv4.ip_local_port_range = 1024 65536 net.core.rmem_max = 16777216 net.core.wmem_max …

5
HTTP / 1.1 ETagおよびIf-None-Matchヘッダーをサポートするリバースプロキシはどれですか。
キャッシングにリバースプロキシを使用するeコマースプラットフォーム用のキャッシングシステムを開発しています。適切なHTTP / 1.1ヘッダーを使用して無効化を処理する予定です。つまり、コンテンツの最初の世代にETagを設定し、そのETag値をアプリケーションにキャッシュします。Cache-Controlヘッダーは「must-revalidate」を指定するため、プロキシはETagを使用した後続のリクエストでIf-None-Matchヘッダーを設定する必要があります。アプリケーションはキャッシュされたETag値を検索し、一致する場合は304応答を送信し、それ以外の場合は完全な200応答を生成します。 私はnginxを使用したいと思っていましたが、それがETagをサポートしていることを確信できません(ドキュメントはそれがサポートしていないことを示していますが、おそらく古くなっていますか?)。ワニスは別のオプションですが、私もここでは前向きではありません。 ETagを完全にサポートしているリバースプロキシサーバーはどれですか。実際に複数のバージョンをキャッシュして、キャッシュを無効にせずにスプリットテストなどを実行できるようにしたいと考えています。つまり、HTTP / 1.1は、クライアントが複数のETag値を持つIf-None-Matchを送信でき、サーバーが一致するETag(存在する場合)で応答する必要があることを指定します。リバースプロキシが最後に表示された値だけでなく複数のコピーを保持し、使用するリクエストごとにサーバーに指定させる場合、それは理想的です。

2
メモリとディスクストレージの両方でワニスを実行することは可能ですか?
キャッシュヒットを最大化し、変化の遅いサイトの効率性に興味があります。仮想ホストには大量のRAMはありませんが、ワニスで利用できるものを使用しますが、十分なメモリがない場合はディスクキャッシュにフォールバックします。 ニスの単一インスタンスでこれを行うことは可能ですか?ドキュメントには、「ファイル」と明確な選択肢として「malloc関数」ストレージを記述する。
8 varnish 

1
5 IPのcPanelサーバーでニスを塗る
同じドメインの3つのサブドメインをホストするサーバーがあり、それぞれに独自のIPがあります。たくさんの小さな画像とワニスが奇跡を起こすという理由で、Apacheの前にワニスをセットアップする必要があります。 サーバーにはまだ名前が付けられていないため(DNSは古いサーバーを指す)、IPとの比較を行います(これがゴミになる理由かどうかはわかりません)。 私はcPanelからポート0.0.0.0:81にApacheを設定し、次のようにdefault.vclにバックエンドを作成しました。 backend name1 { .host = "x1.y2.z3.w4"; .port = "81"; } backend name2 { .host = "x5.y6.z7.w8"; .port = "81"; } など、すべてのサブドメインについて すべての例は言っています: put: if (req.http.host ~ "x1.y2.z3.w4") { set req.backend = name1; } else { set req.backend = name2; } 次のような新しいvcl_recvサブルーチン定義に追加します。 sub vcl_recv { if (req.http.host ~ …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.