タグ

ブックマーク / memo.yomukaku.net (5)

  • Railsの各種サーバーの速度ベンチマーク: Pound、Varnish、Nginx、Unicorn、Mongrel

    Railsの各種サーバーの速度ベンチマーク: Pound、Varnish、Nginx、Unicorn、Mongrel RailsのアプリをPound、Varnish、Nginx、Unicorn、Mongrelを使用して動かした際の速度ベンチマーク。以下の構成での同一Railsアプリをhttperfでベンチマークした結果をまとめます。 Pound -> Varnish -> Nginx -> Unicorn * 2 Varnish -> Nginx -> Unicorn * 2 Nginx -> Unicorn * 2 Mongrel (Rails.env == 'development') node.js (Express + Socket.IO) 全体の構成Poundを80番ポートを公開し、Varnishを81番ポート、nginxを8080番ポート、Unicornの2プロセスをsocke

  • Sanitize gem: whitelistベースの... - YomuKaku Memo

    htmlタグやscriptタグを含むコンテンツをデータベースから取り出してviewに出力する場合は、危険なタグを出力しないようにする必要があります。 特にCMSのようなアプリを作成する場合は、アプリを作成した人と異なる人がコンテンツを入力できるため、ユーザーの入力をそのままviewに出力することは危険です。 例えば、 <script type="text/javascript">alert("I'm going to steal your secret.");</script> のような入力をそのまま出力すると、当該のページがリロードされるたびにJavaScriptのアラートメッセージが表示されてしまいます。 このようなことを避けるため、一般にsanitizeという処理が行われます。 フレームワークである程度の面倒はみてもらえます。 Rails 3のActionViewでは、viewに文

  • HashWithIndifferentAccessで:aまたは'a'をkeyにしてhashにアクセスする

    ActiveSupportのHashWithIndifferentAccessを使用すると、文字列またはシンボルをキーに使ってハッシュの要素にアクセスできるようになります。文字列またはシンボルでアクセスできるハッシュを作成するには、h = {:a => 1, :b => 2}.with_indifferent_accessのようにhashを作成します。 Rubyでhashを作成する場合、文字列をキーとしたh = {'a' => 1, 'b' => 2}あるいはシンボルをキーとしたh = {:a => 1, :b => 2}の2通りの方法で作成することができます。Hashのキーがシンボルでも文字列でも、意味は同じです。一方で、シンボルをキーとしたハッシュ(例えばh = {:a => 1, :b => 2})に対し、文字列をキーとしてアクセスしてもnilが返り、目的をなしません。h = {:a

  • 2012年に使いたいJavaScriptのMVCフレームワーク14選 - memo.yomukaku.net

    1億総スマホが近づいたこの頃に、JavaScriptのMVCフレームワークに何を使うか? node.jsと使ってみたいウェブアプリのフレームワークの候補を14選んでみました。 MVCフレームワークといっても、純粋なMVCだけではなく、MVVM、MVC2、MVPなど広義のMVCフレームワークを含みます。成熟したフレームワーク backbone.jsのように一定の歴史のあるものや、express.jsのようにnode.jsでのデファクト・スタンダードになっているようなものを含め、今すぐプロダクション環境で使用できる成熟度があると思われるフレームワークをまとめます。 Backbone.js http://documentcloud.github.com/backbone/ 古参のフロントエンド向けMVCフレームワーク。 node.jsに限らず、Rails等のフレームワークでもフロントエンド側の

  • node.js 2011年ベストリポジトリ15 - memo.yomukaku.net

    2011年末現在にgithubで公開されているnode.js関連のリポジトリのうち、fork数が多いベスト15をまとめました。 いくつぐらい使われたことがありますか? お気に入りは入っていましたか?1. node.js 12040 fork node.jsのご尊です。railsのfork数が2534 forkです。Forkの数でメジャー度を計ることはできなさそうですが、今年node.jsが大きく注目を集めたことはfork数にも現れていそうです。 「速い」が、node.jsで書いて一番感じたことです。 node.jsは単純なアプリであればnginxと同じ程度の時間でレスポンスを返してくれます。また、Javaで書いたアプリより場合によっては速く動きます。 リアルタイム性の高いアプリを作る場合は、入力と出力のタイムラグがあるべきではないため、Railsのようなフレームワークでは厳しくなり、今後

  • 1