タグ

ブックマーク / blog.dakatsuka.jp (5)

  • bundle installするときはpathを指定しよう

    Rails3からBundlerが導入されgemの管理がしやすくなりましたが、色々なRailsアプリでほいほいbundle installを実行するとシステムにインストールされるgemが結構カオスになってきます。また、Rails2とRails3が同居する開発環境だとかなり面倒くさくなります。精神衛生上あまり宜しくありません。 そこでbundlerにオプションを渡してgemを任意のディレクトリにインストールし、gemRailsプロジェクト毎に管理することをオススメします。 Rails3の場合、使い方はこんな感じになります。 まず、プロジェクト用のディレクトリを作成し、Gemfileを記述します。

    bundle installするときはpathを指定しよう
    uchida75cm
    uchida75cm 2013/03/30
    bundlerは適当に使わないでちゃんとgemを入れる場所を管理するべき
  • 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 のスケールアウトを実現する方法
    uchida75cm
    uchida75cm 2012/11/12
    Pub/Subについて
  • npm と package.json でパッケージ管理

    node.js で RubyBundler(Gemfile) のようにパッケージとバージョンを管理するには、package.json というファイルを作成すれば良いようです。 package.json のdependenciesに必要なパッケージ名とバージョンを指定していきます。バージョンは"2.3.11"のように直接指定する事はもちろん、">= 0.0.1"のように記述する事も出来ます。ここら辺はBundlerと一緒ですね。 { "name": "example-app" , "version": "0.0.1" , "private": true , "dependencies": { "express": "2.3.11" , "jade": ">= 0.0.1" , "socket.io": "0.6.18" } }

    npm と package.json でパッケージ管理
  • Node.js + Vowsではじめるテスト駆動開発

    Node.jsで使えるTDD, BDDフレームワークはいくつかあるのですが(nodeunit, Jasmine, etc)コールバック・イベント周りのテストのしやすさとCoffeeScriptが利用出来る Vows が非常に熱い感じです。 特にテストコードをCoffeeScriptで(別途コンパイルせずに)そのまま記述出来るのは、テストコードの可読性を考えると大きなメリットだと思います。 Vowsのインストール# VowsはNode Package Manager(npm)でインストールする事が出来ます。vowsコマンドを有効にするためにカレントディレクトリの node_modules の他にグローバルにも入れておきましょう。 npm install vows npm install -g vows Vowsを使った開発手順# サンプルとして自分のフルネームを返す事しか出来ないPerson

    Node.js + Vowsではじめるテスト駆動開発
  • node.js + express でセッションストアを Redis に変更する方法

    express のセッションは標準だとメモリストアなので、再起動するたびにセッションが消えてしまいます。そこでセッションストアを Redis にしてセッションを永続化出来るようにしてみます。 下記環境で動作を確認しました。 Node.js v0.4.8 express v2.3.11 connect-redis v1.0.5 npm で connect-redis をインストールします。 var express = require('express'); var RedisStore = require('connect-redis')(express); var app = express.createServer(); app.use(express.cookieParser()); app.use(express.session({ secret: "secret key", sto

    node.js + express でセッションストアを Redis に変更する方法
  • 1