タグ

varnishに関するkazeburoのブックマーク (36)

  • VarnishCache4.0.0が公開されました – cat /dev/random > /dev/null &

    今回もgifを撮ってみました。 取得に3秒かかるコードでTTLは10秒です。expire時の動きを見てみてください。 検証コード ■date.php <?php header('Cache-Control: max-age=20'); echo date("Y/m/d H:i:s")."\n"; sleep(3); ■vcl@3.0.5 sub vcl_fetch{ set beresp.do_stream = true; set beresp.ttl = 10s; set beresp.grace = 10m; } ■vcl@4.0.0 sub vcl_backend_response{ set beresp.do_stream = true; set beresp.ttl = 10s; set beresp.grace = 10m; } grace動作 3.0.5 4.0.0 3.0で

    VarnishCache4.0.0が公開されました – cat /dev/random > /dev/null &
  • [Varnish]gracefulにキャッシュしたい

    次の様なケースの Varnish の振る舞いを調べてみた キャッシュされていないコンテンツに同時にアクセスされた時(thundering herd problem) TTL 設定したキャッシュコンテンツが expire した時(grace mode) オリジンサーバが HTTP ステータス 500番台を返してきた時(saint mode) 構成 client – Varnish/3.0.4 – nginx/1.1.19 & php-fpm 通常のキャッシュの振る舞い Varnish を使うとコンテンツがキャッシュされることを確認。 確認方法 現在時刻を返すだけのページ sleep.php を用意。 意図的に処理時間がかかるよう sleep を挟む <?php sleep(5); echo date('Y/m/d H:i:s') . "\n"; ?> 未キャッシュ状態でアクセスすると現在時刻

    [Varnish]gracefulにキャッシュしたい
  • Varnishのログにアクセスしてみよう! | GREE Engineering

    こんにちは、Service Reliabilityチームのいわなちゃん(@xcir)です。チーム名が読みづらいのでSRやSレアと呼ばれたりもしています。レアリティが上がるように頑張って行きたいと考えています。 前回は「Varnishでテストコードを書こう!」という記事を書いたので、今回はGREE Advent calendar 2013の17日目も兼ねてVarnish Cache(以下Varnish)のログを読んだり加工してみたりしようと思います。 また、使用したVersionは3.0.3です。 Varnishのログのしくみ Proxyでアクセスログを取得したいというのはよくあると思います。通常のミドルウェアでは設定ファイルで出力ファイル名を決めたりします。しかし、Varnish体(varnishd)の設定ではそのような項目はありません。 では、Varnishはログを出していないのか?と

    Varnishのログにアクセスしてみよう! | GREE Engineering
    kazeburo
    kazeburo 2013/12/18
    “Service Reliabilityチーム”
  • Varnishのセットアップ方法(RHEL/CentOS版) | Pocketstudio.jp log3

    Varnish Cacheは、HTTPリバースプロキシのキャッシュ機能を持つソフトで、「ウェブアプリケーション・アクセラレータ。ウェブアプリのフロントに置くだけで、著しい速さに」なるというもの(公式サイトより)。オープンソースで提供され、コミュニティ https://www.varnish-cache.org/ 開発が進んでいます。 自分自身、前々から手軽に使えて早いらしく、「わたし気になります!」状態でしたが、使うシーンがありませんでした。 ところが、Munin グラフ参照用サーバの動作が鈍くなる対処として Varnish の出番かなと。やることやっても重いので、あとはキャッシュさせるしかない!と思い、まずは Varnish  を導入決意しました。 Debian/Ubuntu/RHEL/CentOS 色々動きます。自分が普段使う RHEL/CentOS 向けのセットアップ記事が無く、少々

  • Varnish3.0.3が公開されました – cat /dev/random > /dev/null &

    Varnish3.0.3が公開されました。 今回の変更は多くのバグフィックスとツール系の機能拡充とドキュメントの整備です。 公式リリースノート varnish-cache-3.0.3 バグフィックス ・ストリーミングと正規表現の評価においてクラッシュの要因となるバグを複数修正しました。 ・ESIとGZIPにおいて壊れたオブジェクトを返却するケースが存在する問題を修正しました。 ・ESIのremoveタグ内にHTMLのコメントがあるケースにおいて不適切な削除を行なっていたのを修正 ・ban lurkerのスリープする条件の変更(回収した際は設定値・回収しなかった場合は1秒) ・多くのクラッシュの要因になるバグの修正 ・その他いろいろ修正 ツール系の機能拡充 varnishstat ・json出力オプションの追加(-j) varnishtest ・resp.bodyでレスポンスボディの評価が可

  • Webサーバ勉強会#5でVarnishではじめるESIって発表してきました – cat /dev/random > /dev/null &

    oranieさんが主催しているWebサーバ勉強会という 全員何かしら発表するという勉強会でESIについて発表してきました。 ESIについては結構前にqpstudyでもLTしているのですが Varnishのバージョンも上がり、いろいろ使いやすくなったので、ここでもう一回とおもいこのテーマで発表しました。 Varnishの利点はやはりその柔軟な設定(VCL)にあると思うので その利点を生かして、単純に静的ファイルをキャッシュさせるだけではなく ESIのように複雑なキャッシュをさせるのもいいんじゃないかなと思っています。 また他の方の発表を聞いてfluentdはやっぱり使いたい!と思った所存です。 JSONにどうしてもなるのかなぁと思っていたのですがrawで収集できるようにしたよ!という発表もあり既存とも組み合わせしやすくこれはいいなと考えています。 Apacheについても2.4.1が出た際に僕

  • Varnish best practices « Kristian Lyngstol's Blog

    A while ago I wrote about common Varnish issues, and I think it’s time for an updated version. This time, I’ve decided to include a few somewhat uncommon issues that, if set, can be difficult to spot or track down. A sort of pitfall-avoidance, if you will. I’ll add a little summary with parameters and such at the end. 1. Run Varnish on a 64 bit operating system Varnish works on 32-bit, but was des

  • Varnishで簡単にリダイレクトができるVMOD作ってみた(vmod_redirect) – cat /dev/random > /dev/null &

    Varnishでリダイレクトを行うのは結構めんどくさいです。 たとえばuser-agentにiphoneかipodを含む場合にそれ用のページにリダイレクトする場合は以下のようになります sub vcl_recv { if (req.http.user-agent ~ "iP(hone|od)") { error 750 "Moved Temporarily"; } } sub vcl_error { if (obj.status == 750) { set obj.http.Location = "http://www.example.com/iphoneversion/"; set obj.status = 302; return(deliver); } } (via:Redirecting using VCL) ただリダイレクトしたいだけなのに二箇所のアクションでコードを書かなくてはい

  • 夏に出したVarnishCache入門をPDFで公開しました – cat /dev/random > /dev/null &

    夏コミで同人誌でだしたVarnishCache入門ですがPDFで公開します。 幾つか公開したかった理由はあったのですが、実際コミケまで足を運んで買っていただいた方にちょっと申し訳ないかなと 電子出版での有料配布も考えていたのですが 64P程度で大げさかなというのと、もう一ヶ月経って3.0.1も出たしいいかなと思い公開します。 内容的には初心者向けとなっていますので、そこまで高度な内容については記述していません。 なお3.0.1が公開されたためページ数が変わらない範囲で、その内容についても一部加筆しています。(fallback directorとか) Varnishを使ってみようと考えている方の参考になればと考えています。 PDFのダウンロード ちなみに、時間と印刷費の関係で書ききれなかった事がたくさんあるのですが(転記されないパラメータやら、varnishtestとか・・・) そういうこと

    夏に出したVarnishCache入門をPDFで公開しました – cat /dev/random > /dev/null &
    kazeburo
    kazeburo 2011/09/12
    RT @xcir: [blog書いた]夏に出したVarnishCache入門をPDFで公開しました
  • Varnish Cache3.0.1がリリースされました – cat /dev/random > /dev/null &

    Varnish Cache3.0.1が公開されました。 主にバグ修正かとおもいきや嬉しい機能追加もあります。 僕は英語が苦手で書いてる時点で変更の検証が終わってないので 勘違いしている訳があったら教えて下さい・・・ Varnish Cache releases Objects with grace and keep set were mistakenly seen as candidates for the shortlived storage, but would not be cleaned up quickly, something that manifested as if there was a memory leak. This is now fixed. Transientストレージにおいてメモリリークのような現象が起きるバグを修正しました。 この件ですね Varnish3で

  • varnishでのif-modified-sinceの無視のやりかた – cat /dev/random > /dev/null &

    HTTPでの要求でIMS(if-modified-since)というものがあります ようはこんな感じのやりとりです ブラウザ「今この日付でオブジェクトもってるんだけどこれって最新?使ってもいい?」 (If-Modified-Since: Sun,14 Feb 2010 03:01:19 GMT) サーバ「最新だからそれ使ってもいいよ」 (304 Not Modified) 普通であればまったく問題ないやり取りです ただトラフィックが非常に大きいサーバの場合深刻な問題になります さっきのやり取りをもうちょい具体的にかくと ブラウザ「今この日付でオブジェクトもってるんだけどこれって最新?使ってもいい?」 (If-Modified-Since: Sun,14 Feb 2010 03:01:19 GMT) サーバ「ちょっとまってね(HDDのファイルの更新日時を調べる・・・)最新だからそれ使ってもい

  • コミックマーケットC80でVarnish入門本委託します – cat /dev/random > /dev/null &

    ようやく大ポカしない限りが出せるぐらいできたので正式に告知します! コミックマーケットC80でVarnish入門を委託します! 委託するサークル様は 京大マイコンクラブ 二日目 東地区 X45a です まだまだ校正してもらったり、表紙がなかったり、一部書いてる途中だったりしますがだいたい以下のような感じです。 サンプルでPDFにしてみました。 サンプル内容は ・DNSディレクターの動き ・VCLフロー図 ・VCLデバッグ法 ・Appendix のそれぞれ一部です。 ぜひぜひお立ち寄りください! — 京大マイコンクラブ Website 独習KMC vol.1(KMC様の告知記事)

    kazeburo
    kazeburo 2011/07/19
    欲しい!
  • ARAKI notes - tokyo.vclで発表してきた。varnish+squid混在ネタで。

    Varnish3のリリースパーティーも兼ねたTokyo.vclのためにクックパッドさんへ。 その時の様子はtogetterに。はじめての人が集う集会はいろいろむずかしいですなあ。 なぜかイカが表示されないslideshareの資料もつけとく。 tokyo.vcl発表資料(varnish+squid) View more presentations from yasuhiro araki

  • VarnishCache3.0beta2がリリースされました – cat /dev/random > /dev/null &

    VarnishCache3.0のβ2がリリースされました。 バグフィックスだけではなくて少し新機能もあります。 Varnish Cache 3.0 beta 2 documentation updates, particularly for the standard VMOD. vmod_stdのドキュメントを更新しました。 varnishncsa now ignores piped requests, since there’s generally too little information for us to do anything sensible with them. varnishncsaではpipe動作時にログが出ないようになりました。 the VCL compiler is now stricter in enforcing no duplication of backen

  • Varnish Cache 3.0 beta 1 | Varnish Community

    Download Varnish is distributed as both source and binary packages. Please choose the appropriate version for your platform. Source Debian FreeBSD Red Hat Enterprise Linux 5 Ubuntu Summary of changes from 2.1.5 to 3.0 beta 1 Preliminary streaming support, both on miss and on pass. Compression and uncompression support, including stiching together compressed ESI fragments. Plugins (vmods) Much impr

  • 第14回 [キャリアアップ編⑤]varnishを使おう④─実践varnish | gihyo.jp

    大規模コンテンツ配信の仕組みとしてvarnishをテーマに連載してまいりましたが、今回は、実際にサービスでも利用しているxcir氏(いわなちゃん)にご協力いただき、連載におけるvarnishシリーズをまとめたいと思います。それではxcirさんよろしくお願いします。 はじめまして、xcir(いわなちゃん)といいます。今回は、varnish実践編ということで、運用に役立つテクニックなどをテーマにご紹介できればと思います。なお、今回の内容につきましては特記がない限りCentOS上で動かしたvarnish2.1.4での記載となります。 VCLについて varnishは複雑な設定をしなくても高速に動きますが、決め細やかな制御を行う際は、VCL(varnish configuration Language)の設定が必要です。VCLは一般的な設定ファイルとは違い、まるで言語のように記述して動作します。

    第14回 [キャリアアップ編⑤]varnishを使おう④─実践varnish | gihyo.jp
  • 第13回 [キャリアアップ編④]varnishを使おう③─便利な機能を使いこなす | gihyo.jp

    【例1】親子関係の定義 バックエンドサーバを172.20.1.1: 6081とし、30ms以内の返答を期待する。 backend default { .host = "172.20.1.1"; .port = "6081"; .connect_timeout = 30ms; } 【例2】URLからコンテンツ振り分け リクエストURLがwww.test.jpの場合、キャッシュ有無の確認、必要に応じてdefault定義に従ってbackendサーバへ接続する。それ以外のURLであった場合は、「⁠400 "Forbidden"」を返信する。 # backend server if (req.http.host == "www.test.jp") { set req.backend = default; } else { error 400 "Forbidden"; } 【例3】特定キャッシュの時間

    第13回 [キャリアアップ編④]varnishを使おう③─便利な機能を使いこなす | gihyo.jp
  • qpstudy#03でVarnishのVCLを書くときのTipsについてLTしてきました – cat /dev/random > /dev/null &

    またまたVarnishのLTをqpstudy#03でやってきました 今回はVCLを記述する際に分かりづらいサブルーチンのところとデバッグの仕方を軽く話しました 正直5分という時間で詰め込みすぎた感があって今後の課題かなーと思いつつ Varnishを使う際の一助になれば幸いだと思っています 発表資料 UST(僕が話してるのは1:35:00あたりからです) UST中で言及しているinitrcの改造は Varnishのinitスクリプト改造(graceful対応) また二次会かビアバッシュで話したパージについては マルチドメイン環境でHTTP経由でPurgeを行うVCL設定とスクリプト 参加された方々お疲れ様でした楽しかったです! また、会場を貸していただきサポートしていただいたニフティの方々ありがとうございました! qpstudy公式 追記: ビアバッシュで話したApacheTrafficSe

  • 第11回 [キャリアアップ編③]varnishを使おう | gihyo.jp

    これらを必要に応じて書き換えることができます。たとえば、番サービスなどで利用する場合、特にDMZセグメントで構成しようと考えるのであれば、-Tの管理画面待ち受けポートは変更するなどした方が良いでしょう。 また、サービスの規模に応じて、-sのキャッシュファイルの場所や容量を変更することになるかと思います。デフォルトでは、/var/lib/varnish/varnish_storage.bin に1Gバイトの容量を確保しますが、大規模コンテンツ、高トラフィックでキャッシュサーバ自体もかなりの台数並べるようなサービスであれば、このデバイス自体をメモリ上にやSSD、f-ioなどの高速デバイスにするかを検討します。 varnishとApacheを別々のサーバに入れてみる さて、1つの筐体にvarnishとApacheを入れ、稼働を確認することができたなら、次は同居していたApacheを別筐体へ移動

    第11回 [キャリアアップ編③]varnishを使おう | gihyo.jp
  • Home page EMEA

    Artifact Caching Unlock Peak DevOps Performance with Fast, Efficient Caching Boost developer productivity with artifact acceleration software that simplifies processes and reduces costs. Content Delivery Software Life Without Latency With Varnish Enterprise you can provide the fastest, most efficient content delivery, anywhere, enabling unprecedented experiences.

    kazeburo
    kazeburo 2010/09/10
    かわいいが似合わない RT @xcir: あとvarnishの公式サイトが綺麗になってる favicon的にdrupal使ってるのかな? http://bit.ly/auLU69 デザインが