nginxをmrubyで制御するモジュールngx_mruby 0.0.1をリリースしました

といっても、nginx固有のメソッドはクライアントに任意の文字列を返す事しかできませんが、とりあえず動くものを実装する事ができました。ということで、mod_mrubyの時と同様ngx_mruby 0.0.1としてGithubでリリースしたいと思います。もちろんmrubyに最初から含まれているメソッドは動きます。

続きを読む

nginxの非同期I/Oとキャッシュ周りの実装について

nginx-1.0.14のソースを見ていく。非同期I/Oをどのようにくししているのか非常に興味がある。まずは、リクエストを受け取った後、どのようにファイルを非同期で読み込みそれをキャッシュとして扱っていくのか、また、非同期であることの優位性をどのように実装しているのかを紐解いていった。

まずは以下の「ngx_http_file_cache_read()」関数でキャッシュの読み込みや更新を行っている。

続きを読む