タグ

varnishに関するmapk0yのブックマーク (13)

  • はてなブログのキャッシュ周りをきちんと改善したら、アプリケーションサーバの台数を半分にできた話 - Hatena Developer Blog

    はてなブログでSREをやっているid:cohalzです。 2019年12月頃からid:utgwkkやid:onkとともに、はてなブログにおけるキャッシュ周りの改善を行いました。その結果、次のような成果が得られました。 ブログ記事のキャッシュヒット率が、1日平均で8%から58%に向上 アプリケーションサーバの台数を、以前の半数以下に削減 DBに届くリクエスト数が、以前の3分の2まで減少 レスポンスタイムの平均が、以前の8割まで減少 この記事では、実際にどういった改善を行ったのか、その際に気をつけたことや大変だったことを紹介します。 はてなブログがVarnishを導入した経緯と課題 開発合宿をきっかけに問題が明らかになる 進め方をまず考える ホストのメモリをできるだけたくさん利用する メモリを積んだホストでなぜかレイテンシが悪化 キャッシュが分散しないようVaryヘッダを使う デバイス情報を適

    はてなブログのキャッシュ周りをきちんと改善したら、アプリケーションサーバの台数を半分にできた話 - Hatena Developer Blog
  • Varnish5.0.0がリリースされました – cat /dev/random > /dev/null &

    二年ぶりぐらいにメジャーバージョンが更新されました。[公式リリース] [ダウンロード] 今回の目玉機能としてHTTP/2対応とDirectorのConsistent Hash対応があります。 なにはともあれ、とりあえずHTTP/2を使うセットアップをしてみましょう。 Hitch1.4.0+Varnish5でHTTP/2を使う Varnishはよく知られてるようにHTTPSに対応していません。 HTTP/2に対応したこのバージョンにおいても、やはり体では対応をしていません。 そのため通常のブラウザからVarnishに対してHTTP/2にアクセスするにはTLSを解かなくては行けません。 今回はVarnishSoftwareが提供しているHitchを利用します。 なお、HTTP/2を利用するには1.4.0以降のバージョンが必要です。 また、一部ディストリビューションではパッケージが提供されてい

    Varnish5.0.0がリリースされました – cat /dev/random > /dev/null &
  • スロットルでサイトを守る(vmod-vsthrottle) – cat /dev/random > /dev/null &

    キャパシティプランニングをする際に頭がいたいものの一つに通常ではないアクセスがあります。 ぱっと思いつくので 閲覧数がページに表示されているのでF5押しっぱなし スクリプトでスクレイピングしようとしているのか暴走している 足跡をつけるために尋常じゃない速度で訪問しまくる ログイン試行 画像をひたすらダウンロード などなどいろいろあります。 これらに共通なのが、通常ではないリクエストで大量のリソースを消費することです。(もちろん他の問題(セキュリティ)があるものもあります) もしキャッシュしていたとしても、アウトバウンド帯域を過剰に利用しますし、キャッシュが出来なければwsやdbなどでの負荷になります。 キャパシティプランニングをする際には様々な条件を考えて構築していきます。 単純にユーザーが増えて負荷が増えていくのは望ましく、喜んでインスタンスを増やしたり負荷対策をしますが そうでない場合

  • とある CMS を使ったサイトに Varnish を導入した話

    Shin x blog Advent Calendar 2013 の 6 日目です。 とあるサイトに、Varnish をリバースプロキシとして導入して、半年が経過しました。 導入した経緯やその効果など書いてみたいと思います。 Varnish とは Varnish は、HTTP アクセラレータです。Web サーバのリバースプロキシとして動作し、キャッシュを生かして高いパフォーマンスを発揮するのが特徴です。また、VCL という独自の設定言語を持ち、これにより状況に応じた設定を柔軟に行うことができます。 導入の経緯 このサイトでは LAMP 構成の CMS を利用しており、インフラには AWS を利用しています。基、閲覧が中心なのですが、イベント時に多数のアクセスがあります。S3 や CloudFront も検討したのですが、コンテンツを数分おきに更新する必要があるので今回は採用しませんでした

  • Varnishでテストコードを書こう! | GREE Engineering

    はじめまして、サーバ基盤チームの田中祥平(@xcir)です。 最近入社しまして、チームではいわなちゃんと呼ばれています。よろしくお願いします。 入社してからGREEの配信システムをVarnish Cache(以下Varnish)に置き換える仕事をしていたのですが、少し前に問題なく山を超えました。 そこで今回利用したVarnishの特にテスト機能について紹介しようと思います。 なお、今回の説明に利用するVersionは3.0.3です。 Varnishとは VCLというドメイン固有言語をもち、キャッシュもできる高速リバースプロキシです。 if文が書けるので柔軟に記述しやすいという特徴があります。 たとえば/admin/以下に許可したIP以外からのアクセスは弾くと言ったことは以下のように記述できます。

    Varnishでテストコードを書こう! | GREE Engineering
  • varnishtestがHTTP2対応して超便利! - ASnoKaze blog

    既に記法が変わっています。サンプルコードはそのままでは使用できません。リポジトリ内のテストコードを参考にしてください (2016/04/04) 20161210 「varnishtestのHTTP/2対応 アップデート」にて、更新項目について書きました Varnish-CacheのvarnishtestがHTTP2に対応した(まだWIP状態であり、正式ではない。) varnishtestと言う名前だが、Varnishのテスト以外にも十分使えると思う。 イメージしやすいように先に簡単なサンプルを載せる。 サンプル テストコードはvtcと呼ばれるコードで記述する。 h2client c1 -connect localhost:8080 { stream 1 { txreq -req GET -url / -hdr :scheme http -hdr :authority localhost r

    varnishtestがHTTP2対応して超便利! - ASnoKaze blog
  • (要約記事) Varnish と Microservices: Zipnish の紹介 - おさかな日誌

    元記事: Varnish and Microservices: Introducing zipnish [update] スライドへのリンクが変わっていたので更新: https://www.slideshare.net/Varnish_software/microservices-20-61197134 Amedia が Microservices パターンを適用した時の事例を元に Zipnish というソフトウェアの紹介記事 元記事には無い前提情報 Microservices アーキテクチャを apply する時に Varnish を活用する手法があるようだ。 今まではそれぞれのサービス間はそれぞれ通信するので、接続先のサービスを探す "Service Discovery" の問題を解決しなければいけなかった。具体的には、各サービスのインスタンス情報の格納のために Service Dir

    (要約記事) Varnish と Microservices: Zipnish の紹介 - おさかな日誌
  • 次世代CDNのFastlyで即時削除(Instant Purge)を体感した | DevelopersIO

    ども、大瀧です。 最近話題のCDN、Fastlyを触ってみました。そのセットアップレポートと、Fastlyの目玉機能の一つであるInstant Purge(即時削除)の様子をご紹介します。 Fastlyとは FastlyはFastly社が展開するCDN(Content Delivery Network)サービスです。最寄りでは東京と大阪にPOP(points of presence: CloudFrontで言うエッジロケーションのこと)があります。従来のCDNの型に収まらない様々なオプション機能を備え、Varnishを基盤技術とし設定をVCL(Varnish Configuration Language)で記述できるなど先進技術に特化したCDNと見ることができます。 価格体系は一般的なCDNとさほど変わりませんが、アカウント作成時に50ドル分までクレジットカード登録なしで試せる他、OSSデ

    次世代CDNのFastlyで即時削除(Instant Purge)を体感した | DevelopersIO
  • GitHub - unixy/varnishtuner.py: Varnish Cache Tuner

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - unixy/varnishtuner.py: Varnish Cache Tuner
  • GitHub - brandonwamboldt/varnish-dashboard: Advanced realtime Varnish dashboard with support for multiple servers and advanced management tasks

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - brandonwamboldt/varnish-dashboard: Advanced realtime Varnish dashboard with support for multiple servers and advanced management tasks
  • Introducing Varnish Massive Storage Engine

    Varnish was initially made for website acceleration. We started out using a memory-mapped file to store objects in. It had some problems associated with it and was replaced with a storage engine that relied on malloc to store content. While it usually performed better than the memory-mapped files performance suffered as the content grew past the limitations imposed by physical memory. Most website

  • 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
  • VarnishではじめるESI

    サバカン屋のサバ缶はre:Inventで通用したのか&すぐに使える!最新運用ネタ #re:Port2016Kohei Hoshi

    VarnishではじめるESI
  • 1