タグ

memcachedに関するmattarinのブックマーク (11)

  • Twitter、Memcached向けの軽量プロキシ「Twemproxy」を公開

    22日(米国時間)、Twitterの開発チームが自身のブログにおいて軽量プロキシ「Twemproxy」のオープンソース化を発表した。Twemproxyhは、memcachedプロトコル用に開発されている軽量で高速に動作するプロキシ。ライセンスには、Apache License 2.0を採用しており、Githubで公開されている。 Twitterでは数千にも及びフロントエンドのアプリケーションサーバを用意し、キャッシュサーバを割り当てていた。しかし、ユーザ数が増えることでトラフィックが増大し、アプリケーションサーバを追加しなければならず、結果的にキャッシュサーバのパフォーマンスの低下をまねいていた。そこでキャッシュの性能をあげるために、Twemproxyを開発し導入したという。 Twitterの開発者は、Twemproxyでは以下のようなことが実現できるとしている。 永続的なサーバー接続の維

  • 高負荷サイトのボトルネックを見つけるには : DSAS開発者の部屋

    はじめに アクセスが急増すると、応答時間が著しく悪化するサイトはありませんか? 普段は200ミリ秒以内で安定してアクセスをさばいているのに、イベントやらキャンペーンやらを開始した瞬間から、普段の2倍や3倍のアクセスが殺到し、その結果、レスポンスタイムが3秒とか9秒とかかかるようになってしまうことってありますよね。 あるサイトの実状 つい先日まで、そんなサイトが私の目の前にもありました。自社で運営している某ソーシャル系のサイトなんですが、イベント開始時刻と同時にアクセス数が急増するのです。とはいえ、所詮は普段の2倍とか3倍程度の数なのだから、少なくとも1秒以内にレスポンスを返せるくらいの性能は維持したいものです。 しかし実際は困ったことに、応答に3秒以上もかかってしまう処理が大量に発生してしまう状況に陥ってしまっていました。これはきっと、どこかにボトルネックがあるに違いありません。 仮説を立

    高負荷サイトのボトルネックを見つけるには : DSAS開発者の部屋
  • Shibuya.pm#14 memcached運用監視ノウハウ

    23. GetOptions( 'H=s' => my $HOST, 'p=s' => my $PORT, ); my $sock = IO::Socket::INET->new( PeerAddr => $HOST, PeerPort => $PORT ); if ( !$sock ) { print "couldnot connect to $HOST:$PORT: $!n"; exit(3); ##UNKNOWN } $sock->syswrite("versionrn"); $sock->sysread( my $result, 16 ); if ( $result =~ m!^VERSION! ) { exit(0); ##OK } print "couldnot get VERSION from $HOST:$PORTn"; exit(1); ##CLITICAL 24. Ge

    Shibuya.pm#14 memcached運用監視ノウハウ
  • 勝手に図解するmemcached

    先日、Brian Akerとミクシィの前坂氏によるmemcachedのセミナーがあった。 実践で使用する上での話や開発最前線の話が聴けたため、セミナーは非常に盛況であった。筆者にとっても非常に勉強になる内容だった。セミナーの資料はBrian Aker氏のサイトから入手できるのでセミナーに参加出来なかったひとはこの資料を読んで自習して頂きたい。 が、いかんせん氏のスライドはパッと見ただけではなんとなく分かりづらいように俺は思う。なぜだろうか?それはきっと図がないからだ・・・と勝手に想像する。オトコたるもの、時には勝手な憶測で突き進むのもアリだ。ちなみにBrianのスライドはほとんど要点の箇条書きになっている。これでは解説がないと、特に新規にmemcachedやMySQLを学習している人たちには分かりづらいだろう。 というわけで氏に代わり、memcachedがどのように既存の仕組みを置き換える

    勝手に図解するmemcached
  • mixi大規模障害について 解明編 - mixi engineer blog

    こんにちは、システム技術部たんぽぽGの森です。 先日のmixi大規模障害の原因となったmemcachedの不具合の詳細な解明ができました。 再来週まで発表を見合わせようと思ったのですが、早くお伝えしたほうがいいと思いましたので公開発表致します。 memcachedとlibevent memcachedはlibeventというライブラリを使用してクライアントからの要求(接続、コマンド送信)を処理しています。 libeventを使用するにはevent_baseという構造体を用います。 main threadはmain_baseを使用します。 static struct event_base *main_base; ... int main (int argc, char **argv) { ... main_base = event_init(); ... /* enter the ev

    mixi大規模障害について 解明編 - mixi engineer blog
  • Re: @kazuho: handlersocket plugin や mycached を使えば memcached は不要か、それとも使うべきケースがあるか。考察せよ [10点] - blog.nomadscafe.jp

    handlersocket plugin や mycached を使えば memcached は不要か、それとも使うべきケースがあるか。考察せよ [10点] kazuho (Kazuho Oku) http://twitter.com/kazuho/status/21477219149 考えて答えてみる。 HandlerSocketやmycachedを利用し、MySQLへの接続数が数万単位で行えるようになったり、より多くのクエリ数が発行できるようになっても、memcachedは不要ではないし、使うべきケースもあります。 memcachedは単なるKVSではなく、ExpiresとLRUがついたキャッシュサーバです。キャッシュオブジェクトには期限を付ける事ができ、期限が過ぎたキャッシュは無効にされ、またアクセスがされていない不要になったオブジェクトは削除され、空いたスペースは新しいキャッシュオ

  • mixi大規模障害について - mixi engineer blog

    こんにちは。システム技術部たんぽぽGの森です 先日のmixi大規模障害についてのブログです。 はじめにお断りしておきますが、弊社CTOがtwitterで公開した以上の情報はまだ得られておりません。 twitterでは書ききれなかった細部を補足してみたいと思います 現状判明しているのは以下の点です memcachedに大量の接続・切断を行うとmemcachedプロセスが突然終了することがある memcachedには異常時に終了するフローもあるが、同時に出力されるはずのエラーログは出ていなかった coreも出力されていなかった テスト環境にて追試を行ったところ、なんどか再現させることができましたが、確実に発生する条件は未だ不明です。 障害時の memcachedのバージョンは1.4.4, libeventのバージョンは1.3bです memcached の起動オプションは以下のとおり ./

    mixi大規模障害について - mixi engineer blog
  • [速報]mixiが障害の経緯を発表。原因はお盆のアクセス急増ではなく、memcachedの異常終了

    8月10日の17時20分頃から12日未明までの長時間にわたり、サービスが利用不能もしくは利用しにくい状況になっていた「mixi」。数度の断続的な復旧ののちに、日12日午前1時50分頃には復旧が完了し、現時点で全面的に復旧しているようです。 その障害の経緯について株式会社ミクシィの広報からプレスリリース「『mixi』のアクセス障害のお詫び及び復旧に関するお知らせ」として発表されました。 原因はアクセスの急増ではなかった プレスリリースの中で、今回の障害の原因は以下のように説明されています。 『mixi』のデータベースへの負荷軽減のために導入しているデータキャッシュシステムが複数同時に異常終了したことに伴い、データベースへの負荷が急増したため『mixi』を閲覧しづらい状態となりました。 高負荷かつ特殊な状態でのみデータキャッシュシステムの異常終了が発生していたため、根的な原因の究明に時間が

    [速報]mixiが障害の経緯を発表。原因はお盆のアクセス急増ではなく、memcachedの異常終了
  • tech-log 控え室改め ありんくtech-log

    こちらで続けようと思います。 とりあえず、CentOS5、CentOS6の共生と cpanmでのImage::Magick の取り扱い、Imagerがいまいち美しい処理をしてくれないあたりが目下の目標です。

  • PECL :: Package :: memcached

    PHP Version: PHP 7.0.0 or newer PEAR Package: PEAR 1.4.0b1 or newer PHP Version: PHP 7.0.0 or newer PEAR Package: PEAR 1.4.0b1 or newer PHP Version: PHP 7.0.0 or newer PEAR Package: PEAR 1.4.0b1 or newer PHP Extension: igbinary 2.0 or newer PHP Extension: msgpack 2.0 or newer PHP Extension: igbinary 2.0 or newer PHP Extension: msgpack 2.0 or newer PHP Extension: igbinary 2.0 or newer PHP Extension

  • アシアル株式会社

    アシアルの実績 サーバサイドからフロントエンドUI/UXデザインまで、あらゆる技術・ノウハウを駆使して、幅広い課題を解決してきたアシアルの実績の一端をご紹介します。

    アシアル株式会社
  • 1