hmskさん主催の第一回のTokyo.vclでVarnishの話をしてきました。
5分~15分の長さでと言われたのでのんびりいっぱい喋れる!
・・・と思ったら詰め込みすぎて結構早口で聞き取りにくかったかもしれません。 申し訳ないです。
内容はVarnishCache3.0の新機能と2.1/2.0系からVUPするときの変更点についてです。
UST(5分あたりから喋ってます)
あといくつか資料で補足したい点がありましたので・・・
別にESI使わなくてもgzip対応の恩恵は受けられるよ!
おもいっきりESIでgzipサポートとは書いていますが別にESIに限ったことではないのでESIを使わなくてもgzipは使えます。
スライド中には一行でしか書いてないのですが、
今まではVarnishではgzipの処理ができなかったので1つのオブジェクトに対してgzip・圧縮されてないコンテンツを持つ場合
両方をストアする必要がありましたが今回はその必要は特に無いです。
すでにgzipで圧縮されたキャッシュを持っていて、生を要求された場合は解凍して送ります。
結構便利だと思います。
デフォルトパラメータは3.0専用じゃない
今回良くなってるパラメータについてですが、別に3.0に限った話ではないので参考にしつつ旧バージョンでも似たような設定してみるのもいいと思います。
バージョン間のパラメータの違いについてはこちらを参照してください
Varnishランタイムパラメータ
あとビール飲んでる時に少し話したんですが
persistentがキャッシュを保持する条件ですが子プロセスの再起動だけです。
なので普通にサーバ再起動とかや/etc/init.d/varnish restartの時は破棄しちゃいます。
また、キャッシュしたときに必ずフラッシュしてないっぽいので、
キャッシュHITしてれば子プロセスを再起動しても残ってると思わないほうがいいです。
現実的には子プロセスがパニックして自動再起動したときでもオリジン共倒れということが起きづらいといった使い方なんですかね。
あと勉強会後に@toshiak_netmark さんにstopした状態でファイルコピーして入れ替えたらどうですかねと言われたので試してみたのですが
親プロセスだけを起動したときにすでにストレージに書き込みを行っているのでダメでした><
最後に
主催の@hmskさんをはじめ参加された方々お疲れさまでした!
あと、会場のクックパッドさんありがとうございました。
冷蔵庫とか見せてもらったんですがすごいですね羨ましいです><
あと風呂があれば住めそうな気がする・・・