タグ

redisに関するy_uukiのブックマーク (161)

  • Twemproxy, a Redis proxy from Twitter - <antirez>

    While a big number of users use large farms of Redis nodes, from the point of view of the project itself currently Redis is a mostly single-instance business. I've big plans about going distributed with the project, to the extent that I'm no longer evaluating any threaded version of Redis: for me from the point of view of Redis a core is like a computer, so that scaling multi core or on a cluster

  • Redis Cluster

    Redis Cluster a pragmatic approach to distribution All nodes are directly connected with a service channel. TCP baseport+4000, example 6379 -> 10379. Node to Node protocol is binary, optimized for bandwidth and speed. Clients talk to nodes as usually, using ascii protocol, with minor additions. Nodes don't proxy queries. What nodes talk about? PING: are you ok dude? I'm master for XYZ hash slots.

    y_uuki
    y_uuki 2014/08/10
  • Redisのクラスタリング — redis 2.0.3 documentation

    New in version 2.2. Redisでは、実際にクライアントと通信をするポート以外に、サービス用チャンネルを開いてすべてのノードはこのチャンネルを使って直接接続しあいます。TCPのベースのポート+4000番が使われるため、クライアント向けに6379番のポートを使用している場合には、10379番を使用します。ノード間の通信には、バンド幅と速度に最適化されたバイナリプロトコルを使用します。クライアントとの通信では通常はアスキープロトコルを使用しますが、いくつか変更があります。ノード同士は、クエリーをプロキシー(転送)することはありません。 ノード間の通信内容¶ 各ノードは、PING/PONGと同時に、自分が通信した上で判断した周辺ノード情報(Gossip/うわさ話)も一緒に送信します。

    y_uuki
    y_uuki 2014/08/10
  • twemproxy/notes/redis.md at master · twitter/twemproxy

    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

    twemproxy/notes/redis.md at master · twitter/twemproxy
    y_uuki
    y_uuki 2014/08/09
    redis の transaction 使えないっぽい
  • Flickr: Redis Sentinelの導入 - ワザノバ | wazanova

    http://code.flickr.net/2014/07/31/redis-sentinel-at-flickr/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 36分前 Flickrエンジニアブログで、Redisのマスター障害復旧を自動化するためにRedis Sentinelを導入した経験を紹介しています。 Redisのユースケース 番サービスに影響を与えないように、写真のアップロード / ユーザ通知 / メタデータの編集などの重たいタスクは、Redisのキューに送られて、非同期でオフライン処理されている。 クリティカルなタスクなので、99.9999%が処理(100万件のうち1件以下)され、99.995%の時間は稼働(月に停止が2分を超えない)させる必要がある。 もし、マスターが落ちると、復旧は手動対

    y_uuki
    y_uuki 2014/08/01
  • Home - ID-2Sbo

    Options for using NoSQL The structure and type of NoSQL database you choose will depend on how your organization plans to use it. Learn More

  • LedisDB - A high performance NoSQL like Redis powered by Go.

    Data structure Rich data structure: KV, List, Hash, ZSet, Set. Various Backend Various backend databases to choose: LevelDB, goleveldb, LMDB, RocksDB, BoltDB or Memory. Expiration & TTL Supports expiration and ttl in all kinds of data structures. CLI Support Redis clients, like redis-cli, are supported directly. Easy Embedding Easy to embed in Go application. Data Protection Replication to guarant

  • Redisにマルチプロセスで接続する時に気をつけたい事 - Y's note

    Redis in Action 作者:Carlson, Josiah L.Manning PublicationsAmazon Redis 広告配信やっています@yutakikuchi_です。 Redisの内部処理が1スレッドで受けているようなので、マルチプロセスからRedisに書き込み処理を大量に流した時にどうなるのかを検証してみました。言語はCを、Libraryはhiredisを使います。redis/hiredis hiredisを使って単一プロセスで実行した場合と、Apache Moduleにhiredisを組み込んでマルチプロセスの実行状態で検証します。検証機はCentOS6.4です。 hiredis Redisのinstall、version確認、起動 RedisのVersionは2.4.10です。 $ sudo yum install redis -y $ redis-serv

    Redisにマルチプロセスで接続する時に気をつけたい事 - Y's note
    y_uuki
    y_uuki 2014/07/24
  • Redisを使う時は見積の二倍の容量必要だよね、という話 - Qiita

    [15487] 04 Aug 21:02:37.523 * 1 changes in 900 seconds. Saving... [15487] 04 Aug 21:02:37.523 # Can't save in background: fork: Cannot allocate memory redis-cli infoしても、使用してるメモリは全体の半分ちょっとだったし、空きは十分にある… 答えは Redis Administration http://redis.io/topics/admin に書いてありました。 原因と解決策 redisのバックアップが走る際、おそらく現状使用している量と同じだけのallocateを要求しているために、redis自体はメモリ使用が50%強だとしても、バックアッププロセスが落ちてしまう模様。 解決は簡単で、Redis Administratio

    Redisを使う時は見積の二倍の容量必要だよね、という話 - Qiita
    y_uuki
    y_uuki 2014/07/24
  • How fast is Redis? – Redis

    Use the redis-benchmark utility on a Redis server How fast is Redis? Redis includes the redis-benchmark utility that simulates running commands done by N clients at the same time sending M total queries (it is similar to the Apache's ab utility). Below you'll find the full output of a benchmark executed against a Linux box. The following options are supported: Usage: redis-benchmark [-h <host>] [-

    y_uuki
    y_uuki 2014/07/24
  • HBase at LINE

    1. HBase at LINE ~ How to grow our storage together with service ~ 中村 俊介, Shunsuke Nakamura (LINE, twitter, facebook: sunsuk7tp) NHN Japan Corp. 2. 自己紹介 中村 俊介 • 2011.10 旧 Japan新卒入社 (2012.1から Japan) • LINE server engineer, storage team • Master of Science@東工大首藤研 • Distributed Processing, Cloud Storage, and NoSQL • MyCassandra [CASSANDRA-2995]: A modular NoSQL with Pluggable Storage Engine based on

    HBase at LINE
  • goworker

    goworker is a Go-based background worker that runs 10 to 100,000* times faster than Ruby-based workers. goworker is compatible with Resque, so you can push your jobs with Rails and Resque, and consume them with Go in the background.

    goworker
  • Redis Sentinelを運用してみたお話 | GMOメディア エンジニアブログ

    こんにちは、宇津井です。 弊社ではゲソてんというゲームプラットフォームを運営しております。ゲソてんではサービスリリース当初から主にキャッシュ的な役割でRedisを導入していました。つい先日の事ですが訳あってRedis 2.6からサポートされたRedis Sentinelを採用しました。今回は、採用に至った経緯をご紹介します。 簡単なシステム構成 パフォーマンスは良いし、Memcachedには無い便利な機能を提供するRedisですが約一年間運用していくつかの問題が出てきました。 Redisサーバーが突然高負荷に陥るするとWebサーバーも高負荷に陥るRedisのReplicationは張ってるけどアプリケーション側でRedis Slaveへフェイルオーバーしない(MySQLを直接参照する)Redis落ちると恐らくMySQLサーバーが耐えられない(落ちた事無いけど)という事で対策を行ってきました

    y_uuki
    y_uuki 2014/06/30
  • Redis の永続化について調べた - akishin999の日記

    Redis でのデータの永続化方法について調べたので、忘れないうちにまとめておきます。 調べた時の Redis のバージョンは 2.6.13 です。 スナップショット(RDB) Redis のデフォルトの永続化の仕組み この設定が有効な場合、Redis は定期的にデータベースの内容をディスクに出力する Redis を再起動するとこのファイルからデータが読み込まれ復元される 一定回数の更新 + 一定間隔でディスクにファイル出力 ファイル出力タイミングは設定ファイル、CONFIG コマンドで変更可能 無効にもできる 出力は非同期で行われるため、プロセスがクラッシュした場合には前回のスナップショット以降のデータが失われる可能性あり 多少のデータロスを許容できるようなデータならスナップショットのみでもイケそう 手動で実行するには SAVE コマンドまたは BGSAVE コマンドを実行 SAVE は

    Redis の永続化について調べた - akishin999の日記
    y_uuki
    y_uuki 2014/06/14
  • Socket.IO, Redisを使用し各ゲーム間でプッシュ通知するシステム | 株式会社サイバーエージェント

    2. システム概要 homingは、アメーバピグ関連サービスのいずれかにログインしているユーザに対して、各サービスの通知情報を横断的にプッシュ通知します。 システムの構成は以下の通りです。 図2-1. システム概要 2-1. APIサーバ ユーザへの通知要求を受け付けるREST fullなAPIを備えたWebサーバです。 Node.jsのClusterによる、master/worker構成で稼働します。 通知要求はワーカプロセスで処理します。 図2-2. APIサーバ 2-2. Redisサーバ(データストア用) 一時的なデータをストアするためのRedisサーバです。 sentinelプロセスによる、master/slave構成で稼働します。 ストアされたデータはメモリ上のみで管理し、ディスクへの書き込みは行いません。 以下の情報を管理します。 ユーザのオンライン情報 ユーザIDの索

  • 人間とウェブの未来 - ngx_mrubyの紹介 ならびに nginx+mruby+Redisによる動的なリバースプロキシの実装案

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 ようやくngx_mrubyでもmod_mrubyのように動的なリバースプロキシ設定ができるようになりました。タイトルは完全に@hibomaさんによる「lua-nginx-module の紹介 ならびに Nginx+Lua+Redisによる動的なリバースプロキシの実装案」をパク … inspireしたものになっています。 今回の工夫点としては、 ngxin内部の変数をうまく使う redisとのセッションはnginx起動時に一度だけ行なって、そのオブジェクトを使いまわす proxy_passを使って汎用的な設定にする の3点です。 1に関しては、前回の「ngx_mrubynginxの内部変数を操作する」で紹介しました。 2に関しては、リクエスト

    人間とウェブの未来 - ngx_mrubyの紹介 ならびに nginx+mruby+Redisによる動的なリバースプロキシの実装案
    y_uuki
    y_uuki 2014/05/11
    Blue Green Deploymentに使えそう
  • Redis(2.8系)の基本オペレーションとかSentinelの挙動とかの色々メモ - 元RX-7乗りの適当な日々

    最近必要に迫られて、ようやくRedisをインストールして触ってみました。(Redis童貞からの脱却) 色々と、基部分ではあるけど、せっかく実際に触りながら勉強したので、このエントリにメモしておこうと思います。 尚、使ってみたRedisのバージョンは、stableの最新版である2.8.7です。(OSは、LinuxのCentOS 6.5) ちなみに、このエントリに書いていないような、Redisの基的なアレコレについては、WEB+DB Press Vol.73のRedis特集(2.6向けではありますが)にほとんど書いてあるので読むべし。 WEB+DB PRESS Vol.73 作者: 設樂洋爾,白土慧,はまちや2,大和田純,松田明,後藤大輔,ひろせまさあき,小林篤,近藤宇智朗,まかまか般若波羅蜜,Mr. O,川添貴生,重国和宏,柳澤建太郎,奥野幹也,佐藤鉄平,後藤秀宣,mala,中島聡,堤智

    Redis(2.8系)の基本オペレーションとかSentinelの挙動とかの色々メモ - 元RX-7乗りの適当な日々
    y_uuki
    y_uuki 2014/03/12
  • Redis 2.8 の Sentinel の動きを検証してみた - chrone's external storage

    Redis 2.8 の redis-sentinel によるレプリケーションの自動フェイルオーバーについて、 比較的発生しそうな障害を想定して動作検証してみました。 結論から redis-server の自動再起動を構成している場合は要注意。 daemontools とか。 Master が落ちた後すぐ(例えば数秒)に再起動してきた場合、 再び Master としてレプリケーションに参加します。 よって、Master 再起動の前後でデータに差異があった場合でも、 再起動後のデータをもとに同期される為、データが破壊される可能性があります。 これを回避する為には、Sentinel により sdown/odown として認識されるのを待ってからインスタンスを復帰させるようにします。 復帰が早すぎると、障害(sdown/odown)ではなく再起動(reboot)と認識します。 レプリケーションの再

    y_uuki
    y_uuki 2014/03/03
  • Redisを使って排他制御するwrapperコマンド Redis-Setlock をPerlとGoで書いた - 酒日記 はてな支店

    しばらく前に作って書きそびれていましたが、Yokohama.pm #10 でLTしたのでエントリもあげます。 Perl版 https://metacpan.org/release/Redis-Setlock Go版 http://fujiwara.github.io/go-redis-setlock/ LTのスライドはこちら ⇒ Redis-Setlockを書いたはなし なにをするもの? 「setlockコマンドのロック処理をRedisサーバで行うもの」です。 setlockはflockを使ってロックを獲得したら引数に渡されたコマンドをexecする、daemontools付属のwrapperコマンドで、cronでコマンド実行するときなど多重実行を制御する場合に重宝します。 flockだとホストをまたいだロック処理が行えないため、その部分をRedisを使った排他制御に置き換えたものを書いてみ

    Redisを使って排他制御するwrapperコマンド Redis-Setlock をPerlとGoで書いた - 酒日記 はてな支店
  • Redis::Fast 0.06 released

    こんにちは、もうすぐ17才と100ヶ月を迎えるいっちーです。 今朝、Redis::Fast 0.06をリリースしました。 主な変更点はメモリーリークの修正と、エラー発生時にSegmentation Faltで落ちる問題の修正です。 メモリーリーク Redis::Fastをサブスクライバーモードで動作させると、メモリを無限にい続ける問題をついに!ついに!修正しました。 原因は、一言で言ってしまえば、Perlのリファレンスカウントの扱いの勉強不足です・・・。 XSの中でPerlのオブジェクトを作るとき、プログラマが手動でリファレンスカウントを制御する必要があります。 とはいうものの、全てのオブジェクトのリファレンスカウントを制御するのは大変なので、 XSには「揮発性」という考え方があります。 sv_2motralを使って変数を揮発性に設定しておけば、よしななタイミングでオブジェクトを解放して