タグ

2011年7月4日のブックマーク (6件)

  • Node におけるスケールアーキテクチャ考察(Scale 編) - Block Rockin’ Codes

    [追記] 途中までは Node での複数プロセス起動、プロセス間通信等について書かれていますが、後半は自分が前回の記事 を書くにあたって自分が考えてたことを少し強引に広げて書いた個人的な妄想が多く含まれ、Node におけると言っときながら、後半は Node 関係ない感じになってしまいました。 正直まだ分かっていないことが多いです。変なところをどんどん指摘していただけるとむしろ嬉しいです。 Node におけるスケールアーキテクチャ考察(SSP 編) - Block Rockin’ Codes の続きです。 もともと何となく結論があって書き始めたんですが、書きながら色々調べているうちによくわからなくなりました。 まだまだ調べたらないことがわかったので、とりあえず今わかっているところまで書きます。 結局何がいいたいのかよくわからない感じかもしれないけど、ゴールは SSP のバックエンドの Nod

    Node におけるスケールアーキテクチャ考察(Scale 編) - Block Rockin’ Codes
    yamadar
    yamadar 2011/07/04
    スケールさせた複数のサーバでセッションを共有する必要がある場合は、プロセスが確保したメモリとは別に、セッションストレージを用意するアプローチが有効です。
  • Redis の Pub/Sub を使って Node.js + WebSocket のスケールアウトを実現する方法

    Node におけるスケールアーキテクチャ考察(Scale 編)というエントリーを読んで、RedisはPub/Sub型通信をサポートしているという事を知りました。エントリーでも言及されているように、Pub/Subを使えば Node.js + WebSocket サーバをスケールする際に、中継サーバの役割を果たす事が出来るはずです。 そんな訳で実際に Node.js と Redis を使って Pub/Sub の実験を行なってみました。ユーザが別々のNode.jsサーバに接続していてもWebSocketを通してメッセージのやり取りを出来るようにします。 イメージとしてはこんな感じです。 下準備# Ubuntuの場合は apt-get で1発でインストールする事が出来ます。 $ sudo apt-get install redis npmでredisモジュールをインストールします。 $ npm i

    Redis の Pub/Sub を使って Node.js + WebSocket のスケールアウトを実現する方法
    yamadar
    yamadar 2011/07/04
    Node.js+WebSocketをスケールしてサーバーが複数になった時、RedisのPub/Sub型通信を使えばメッセージのやり取りが出来るようになる。
  • Googleリアルタイム検索が消えている

    リアルタイム検索のURLにアクセスすると、そのURLがサーバ上に存在しないというエラーメッセージが表示される。また検索結果表示ページの左カラムからもリアルタイム検索へのリンクが消えている。ただ、Googleトップページの「もっと見る」からはリアルタイム検索は表示されている(アクセスはエラーとなる)。 検索エンジン専門の米メディア「search engine land」は、ランディングページとヘルプページは存在していること、リアルタイム検索の公式Twitterアカウントが閉鎖されていないことなどを挙げ、これはミスではないかと推測していた。 “難民”化したユーザーはYahoo!JAPANのリアルタイム検索やTwitterの検索を利用しているようだ。 関連記事 「Twitter有料化」ネタが“デマ”になるまで Twitter公式アカウントが否定する騒ぎに 「Twitterが有料化される」──こん

    Googleリアルタイム検索が消えている
  • とんでもなく参考になりすぎるEvernote使用例 4 〜@Surf_Fish のノートブック超整理術〜

    今回寄稿の機会をいただきました@Surf_Fish こと「はま」と申します。「はまラボ」というブログを運営しています。ブログの方では、Evernote、TaskChute、ライフハックに関する記事を書いています。 はまラボ ブログ名の通り、リアルでは化学の研究を仕事としていますが、その実態はサラリーマンです。一人のサラリーマンがどのようにEvernoteを使用しているのか、という一例として見ていただくのが良いかと思います。 @Surf_Fishのノートブック 運用の基思想は「GTD」 原典通りのGTDを再現しているわけではないのですが、私がEvernoteを運用する際の基にしているのは「GTD」です。ノートブックは「タスクの状態(可動)」、タグは「属性(不動)」を表すために使用します。 タグは後から見返すときに絶対に見失いたくないものにしか付けませんので、タグの使用数は少ないです。その

    とんでもなく参考になりすぎるEvernote使用例 4 〜@Surf_Fish のノートブック超整理術〜
  • memcachedと“正反対”、Redisが仮想メモリをサポート - @IT

    2010/09/07 KVS(キー・バリュー・ストア)に分類されるオープンソースのRedisの新バージョン、「Redis 2.0.0」が2010年9月5日にリリースされた。Redisはmemcachedと同様にキーと値のペアをメモリ上に保持するKVSの一種だが、3つの際立った特徴がある。1つはハッシュ以外のデータ構造もサポートしていることで、リスト型、集合型、順序付き集合型などのデータ構造が扱え、サーバ側でコレクションに対するpush/pop、コレクション同士のunion/intersection、数値のincr、decrなどの操作がアトミックに行える。バージョン2.0では複数の操作を1つにまとめてアトミックに操作するコマンドも増えている。 もう1つのRedisの特徴は、マスター・スレーブによるレプリケーション設定ができ、リード側のスケールアウトが容易にできること。 そして3つ目の特徴は、

    yamadar
    yamadar 2011/07/04
    [*kvs}MySQL + memcachedと正反対のアプローチ。Radis単体でそれに似た構成が可能になる。
  • node.jsで遊ぶ: 標準モジュール編

    Aug 11, 2010 最近、このブログが動いているサーバーの調子が悪くてよく落ちるので、落ち着かない感じの今日この頃です。さて、前回のインストール編に引き続いて、今回はnode.jsに標準搭載されているモジュールをいくつか使ったコードを書いて遊んでみたいと思います。 標準搭載されているモジュールを知るには、まずAPIを見てみるのが一番よいです。ここを見ればファイルの処理やHTTPやURL、DNSといった、いくつかの強力なモジュールの機能を知ることができます。なお、特定のモジュールを使う場合は、最初に必ずrequire()で特定のモジュールを呼び出す必要があります。 今回はまずsysモジュールから使ってみることにします。sysモジュールは標準的な出力機能を提供します。改行なしの文字列を出力するprintメソッドや、日付つきログを出力するlogメソッド、PerlのData::Dumperや

    node.jsで遊ぶ: 標準モジュール編
    yamadar
    yamadar 2011/07/04
    sys には、puts 以外に print と log、inspect がある。