タグ

memcachedに関するrochefortのブックマーク (37)

  • ElastiCacheはMemcachedとRedisのどっちを選ぶ? | DevelopersIO

    こんにちは(U・ω・U) AWS事業部の深澤です。 AWSにはElastiCacheと呼ばれるマネージド型のキャッシュストアサービスがあります。利用を始めようと色々調査すると「RedisとMemcached、どっち使ったらいいの?」というのは結構悩みがちなポイントかと思います。今回は2つの特徴を比べてみて、どちらのサービスを使うか一緒に考えてみましょう! 可用性 ElastiCacheでは最小の構成単位を「ノード」と呼びます。EC2で言うところのインスタンスに相当するものです。このノードを組み合わせた集合体をクラスターと呼びます。ノードに直接接続してしまうと、もしそのノードに問題が発生した場合には新しいノードのアドレス(エンドポイント)をアプリケーション側で書き換えなくてはなりませんし、サービスの成長と共に負荷が上がってくるとノードの台数を増やして負荷やメモリ(キャッシュ)を分散したりとい

    ElastiCacheはMemcachedとRedisのどっちを選ぶ? | DevelopersIO
    rochefort
    rochefort 2020/07/04
    セッション情報を保存しておいて障害時にセッションが飛んでしまうリスクなどを考えたら、シャーディングでマルチAZ構成が取れるRedisの方がElastiCache的に優れている
  • ISUCON4 予選でアプリケーションを変更せずに予選通過ラインを突破するの術 - Hateburo: kazeburo hatenablog

    AMIが公開されたのでもう一度やってみた。 AMIについてはこちらのエントリに書かれています ISUCON4 予選問題の解説と講評 & AMIの公開 : ISUCON公式Blog まず ami-e3577fe2 を m3.xlargeで起動します。 CPUは model name : Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz でした。 とりあえず、MySQLのindexを追加する。init.shに追加 $ cat init.sh cat <<'EOF' | mysql -h ${myhost} -P ${myport} -u ${myuser} ${mydb} alter table login_log add index ip (ip), add index user_id (user_id); EOF ベンチマークツールのhttp keepal

    ISUCON4 予選でアプリケーションを変更せずに予選通過ラインを突破するの術 - Hateburo: kazeburo hatenablog
    rochefort
    rochefort 2014/10/16
    いろいろ詰まってる
  • 本当は怖いMemcached - Qiita

    はじめに データアクセスの高速化、セッションの保持などに非常に重要なポジションを占めているMemcached 特徴をあげると、速い安い美味いで、AWS上のサービス化などされており、非常に扱いやすいプロダクトなのですが、Memcachedそのものが単一障害点とならないように冗長化を測った時に深刻な問題が発生する可能性があることをご存知でしょうか。 システムに心あたりがある方は今すぐ代替手段を検討しなければなりません。 どうしてもMemcachedを使いたいという方はこちらへ それでもMemcachedを使いたいあなたへ 前提条件 そもそも冗長化をしなければ問題ないという運用はその時点で怖いのでNG cache機構という性質上、データが飛ぶのは問題ない(”正”となるデータを他から読み出すだけ)が、誤ったデータが読み出されるのをNGとする Memcachedを利用した時に利用ノードを決定するのは

    本当は怖いMemcached - Qiita
    rochefort
    rochefort 2014/07/11
    [[kyototycoon]そうなんですよね。spofになりがち。自分も調べました。
  • Passenger+Rails3でセッションストアにmemcachedを使うとセッションが取り違えられる件

    Rails3 に限らずセッション情報の格納先に memcached を使うことは多いと思うが、Passenger + Rails3 でセッションストアに memcached を使うとセッションが切れたり他のユーザのセッションにすりかわったりする。実はPassenger のドキュメントにがっつり書かれている。 Because worker processes are created by forking from an ApplicationSpawner server, it will share all file descriptors that are opened by the ApplicationSpawner server. (This is part of the semantics of the Unix fork() system call. You might want

    rochefort
    rochefort 2014/03/18
    これやばいやん
  • MySQL :: MySQL 5.1 Reference Manual :: 14.4.3.7 Using the MySQL memcached UDFs

    Section Navigation      [Toggle] 14.4.3 memcached Interfaces14.4.3.1 Using libmemcached 14.4.3.2 Using MySQL and memcached with Perl 14.4.3.3 Using MySQL and memcached with Python 14.4.3.4 Using MySQL and memcached with PHP 14.4.3.5 Using MySQL and memcached with Ruby 14.4.3.6 Using MySQL and memcached with Java 14.4.3.7 Using the MySQL memcached UDFs The memcached MySQL User Defined Functions (UD

  • 勝手に図解するmemcached

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

    勝手に図解するmemcached
  • HandlerSocketソースコード公開しました | BLOG - DeNA Engineering

    はじめまして、樋口と申します。 先日のDeNA Technology Seminar #2でお話させていただきました HandlerSocket Plugin for MySQL のソースコードを公開しました。 HandlerSocketとは? 簡単に言うと、MySQLデータベースへのアクセスを高速化するためのプラグインです。MySQLSQLパーザをすっ飛ばし、ネットワーク通信とマルチスレッド処理周辺を置き換えることによって、InnoDB等のデータベースエンジンの性能を限界まで引き出します。 このHandlerSocketですが、すでにモバゲータウンにて実際に運用しています。従来MySQLとmemcachedの構成で運用していた箇所を、HanderSocketを組み込んだMySQLだけの構成に置き換えました。その結果、MySQLサーバの負荷軽減、memcachedの負荷軽減、ネットワーク

    HandlerSocketソースコード公開しました | BLOG - DeNA Engineering
  • 第3回 memcachedの監視とCloudForecastによるモニタリング | gihyo.jp

    安定したWebサービスを提供するためには欠かすことができないのが監視です。監視を行うことで障害をいち早く検知し、対応を行うことでダウンタイムを最小限にできます。また負荷の掛かり具合やサーバリソースの消費度合いを明らかにすることでいつ、どのタイミングでサーバやインフラを増強するか、またアプリケーションの改善を行うのかを判断できます。Webサービスの稼働やリソースの「見える化」を実現することで、個人の経験や勘、また根性だけに頼らない運用が可能となり、より的確なタイミングでのシステムの改善、増強を行えます。 稼働監視とリソースモニタリング Webサービスのシステムの監視には大きく分けて2種類の監視があります。1つ目は稼働監視、2つ目はリソースのモニタリングです。稼働監視では監視を行ったタイミングで対象システムに例外があれば、メールを送信するなどのアラートを発生させます。稼働監視に於ける例外とは、

    第3回 memcachedの監視とCloudForecastによるモニタリング | gihyo.jp
  • 第1回 memcachedの起動オプションを把握しよう | gihyo.jp

    1.4系で新しく追加された主な機能しては バイナリプロトコルの導入 マルチスレッドの標準化 統計の強化 などが上げられます。この1.4系の機能の詳細については前坂徹氏の連載「memcached 1.4の到来」が参考となります。ここではバージョン1.2.5と最新の1.4.5の起動オプションを比較しながら、新しく追加された機能や実際の運用で用いられる起動オプションについて説明します。 1.2系と1.4系の起動オプションの違い まず、memcachedの起動オプションの一覧(ヘルプ)を確認しましょう。memcachedのヘルプを出力するには、「⁠-h」オプションを使います。 $ memcached -h memcached 1.x.x -p <num> TCP port number to listen on (default: 11211) -U <num> UDP port number t

    第1回 memcachedの起動オプションを把握しよう | gihyo.jp
    rochefort
    rochefort 2010/08/17
    とてもわかりやすかった。
  • 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(or libevent?)の問題を調べる人たち

    Neal Sato @nealsato 二日とも複数台のmemcachedが連続して落ちました。コアは吐かずにストンと落ちるので、原因追及に時間がかかりましたが、memcachedへの接続数が異常に多いと落ちる事は再現できました。 #mixi Neal Sato @nealsato memcachedが大量の接続を受けると突然停止をするので、memcachedへの接続数を減らし安定運用中。外部からの過剰アクセスではなく、サーバ追加→クライアント数増加→停止。 Masahiro Nagano / 長野雅広 @kazeburo ファイルディスクリプタが不足してmemcachedが落ちたとして、そのときには、3万強の接続となってるはず。3万強の接続となるにはアプリケーションサーバ側のmax clientが平均60として500台以上必要。そんなに増えたん?

    mixiがはまったmemcached(or libevent?)の問題を調べる人たち
    rochefort
    rochefort 2010/08/14
    滅多に起きることではない。すでに稼働させている人向けの情報としては想定してる最大接続数に合わせて-c増やすかmemcachedの台数増やしておけば問題起きない。// エンジニアホイホイ
  • [速報]mixiが障害の経緯を発表。原因はお盆のアクセス急増ではなく、memcachedの異常終了

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

    [速報]mixiが障害の経緯を発表。原因はお盆のアクセス急増ではなく、memcachedの異常終了
    rochefort
    rochefort 2010/08/12
    memcached側へはフィードバックされるんだろうけど、もう少し詳細知りたいなぁ。
  • GREE Engineering

    404 お探しのページは見つかりません GREE Engineering トップへ戻る

    GREE Engineering
  • gihyo_sample/memdump.rb at master · sasata299/gihyo_sample

    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

    gihyo_sample/memdump.rb at master · sasata299/gihyo_sample
  • 第2回 RDBMSと組み合わせて使えるmemcached | gihyo.jp

    はじめに 今回からタイプ毎に代表的なNoSQLデータベースを扱っていきます。まず今回は、揮発性key-valueストアの代表としてmemcachedを取り上げます。 なお、利用したコードやプログラムはgithubに置いてあります。適宜参照してください。 どんなところに使える? memcachedの特徴は、何といってもデータの揮発性(memcachedサーバを停止すると全データが消えてしまうこと)です[1]⁠。そのため、データが消えても影響が小さいところに利用シーンは限られてきます。一方、連想配列(ハッシュ)のように使えて扱いやすいこと、様々なサイトでの事例があること、などから導入はしやすいです。 具体的な利用シーン memcachedの具体的な利用シーンとしては、以下の事柄が考えられます。 RDBMSから取得したデータのキャッシュ 消えても大きな影響の無いデータの保存 一般的には(1)のよ

    第2回 RDBMSと組み合わせて使えるmemcached | gihyo.jp
    rochefort
    rochefort 2010/06/11
    memdump.rb使わせていただきます。
  • Railsでrepcachedを使ってみる

    Railsでセッションの保存先として、memcacheを使用する場合があります。 しかし、memcachedが落ちてしまった場合、サイトにログインできないトラブルが起きてしまうなどの懸念があります。 そこでepcachedを使用してみたいと思います。 ■ Repcachedとは? memcachedにレプリケーション機能を追加 非同期のレプリケーション マルチマスタのレプリケーションをサポート(バージョン2.0より) 詳細、repcachedのインストール手順は公式サイトを参照してください。 http://lab.klab.org/wiki/Repcached ■ Railsで使えるようにする Railsのアプリケーションでrepcachedを使用するためには、memcachedクライアントのインストールとアプリケーション側の設定が必要です。 memcachedクライアントの導入 rep

  • Google App Engineをmemcachedに·WebMemcache MOONGIFT

    WebMemcacheはPython製/Google App Engine用のフリーウェア(ソースコードは公開されている)。Webサーバの負荷を減らしたり高速化を考える上で欠かせないのがキャッシュだ。最近のWebシステムではごくごく当たり前に行われている手法だ。 データをPOSTした所 最も有名なキャッシュシステムと言えばmemcachedだが、独自のサービスを立てる必要があるので誰しもが使える訳ではないだろう。あくまでも擬似的ではあるが、Google App EngineをmemcachedサーバにしてしまうのがWebMemcacheだ。 WebMemcacheはGoogle App Engineをキャッシュサーバにする。アクセス方法はHTTPになり、JSONPによるコールバックにも対応している。サーバサイドからはHTTPで使えば良いだろう。クライアントサイドでもJSONPを使えば非同期

    Google App Engineをmemcachedに·WebMemcache MOONGIFT
  • memcachedを知り尽くす 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    memcachedを知り尽くす 記事一覧 | gihyo.jp
  • Windows向けのmemcachedサーバ&フロントエンド·MemCacheD Manager MOONGIFT

    memcachedはその名の通り、メモリー上にデータを保存する。そのためデータの保存/取得はとても素早く行える。反面、そこに保存されているデータはおいそれと見ることができない。もちろんmemcachedクライアントからは見られるが、一覧で取り出したりすることはできない。 サーバ設定 そのため実際にデータが保存されているか、データはどのくらいあるのかといった情報は見られず慣れるまでは多少面倒だった。だがそれを解決するのがMemCacheD Managerだ。 今回紹介するフリーウェアはMemCacheD Manager、Windows向けmemcachedサーバ&フロントエンドだ。 MemCacheD Managerはmemcachedサーバとしての役割とデータ一覧するフロントエンドとしての役割を持つソフトウェアだ。MemCacheD Manager上でmemcachedサーバを設定し、その

    Windows向けのmemcachedサーバ&フロントエンド·MemCacheD Manager MOONGIFT
  • memcachedを介して、PerlとRubyでデータをほげほげしてみる - (゚∀゚)o彡 sasata299's blog

    2009年10月19日22:50 Perl Ruby memcachedを介して、PerlRubyでデータをほげほげしてみる ふと思って、Ruby でデータを memcached に入れて、それを Perl から取り出せるのかな〜というのが気になったので試してみました。データの形式として、文字列、ActiveRecord、ハッシュをそれぞれ試してみます。予想では、ActiveRecord のデータはさすがに Perl では読み込めないだろうけど、それ以外は読み込めるんじゃないかなぁと。 まずは Ruby を使って memcached にデータを set します。 #!/usr/bin/ruby require 'rubygems' require 'activerecord' require 'memcache' class Hoge < ActiveRecord::Base estab