perl の Dancer とか、ruby の sinatra を試してみようと思う

仕事で、Dancerというのを知ったわけですが、最初、これが何なのかさっぱり分からなかった。

要するに、Perl とか、Ruby で動くWebサーバっていうことなのね

何が良いかっていうと、Perl とか Ruby みたいなスクリプトって、多くはWebサービスのバックエンドとして動くわけですが、CGIとして動かすとApachみたいなWebサーバが居て、これがリクエストを受け取ったら、CGI として Perl なり Ruby なりを起動して、結果を受け取ってまた Web サーバがクライアントに結果を返す。

こうすると、Web リクエストのたびに、Perl なり Ruby なりが起動するから、プロセス起動とスクリプトのコンパイルが毎回走って、無駄が大きいわけです。

だから、Perl とか Ruby そのものが Web サーバとして動けば、無駄が省けますね♪ という考え方。

ちうわけで、まずは使える環境を作ることから。

  • Dancer は、Perl CPAN を使ってインストールする。

実は私、CPANというのを始めてつかったのです。しーぱんと読むそうです。しーぽんではない

% cpan Dancer

と打てば、インストールできちゃうんですが、一つハマりました。

% cpan
Terminal does not support AddHistory.
Could not lock lockfile with flock: No such file or directory; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying
Could not lock lockfile with flock: Operation not supported; retrying

こんな感じで、cpan コマンドが Lock ファイルがつくれねー!と文句を言い続けるという現象がでました。

原因は、home ディレクトリを NFS 上に置いた一般ユーザで実行してしまったこと。NFS 上のファイルって排他ロックができないんですよね。だから、ずーっと Lock ファイルを作ろうとして失敗し続けるという現象になってしまう。

home を、/root にもつ root ユーザで実行しましょう。

  • sinatra は、Ruby gem を使ってインストールする

gem も CPAN と同じように、スクリプト環境にモジュールを追加するツール

# gem install sinatra

これだけでインストール完了

とりあえず、今日はインストールしたところで終了

このブログ記事について

このページは、ほーりーが2014年10月29日 23:57に書いたブログ記事です。

ひとつ前のブログ記事は「PowerEdge T105 が起動しなくなった」です。

次のブログ記事は「デジットのPCM2706 USB-DAC」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。