面白そうだったので、さっそく試してみましたという記録です。
あくまで、Synopsisをなぞった程度なんですけどもねー。
※Flea = "ノミ"の意だそうで、podみててもノミを思わせるジョークがちらほらと見受けられます。
まず、トップに表示するhtmlをこさえます。
index.html
<html> <head> <title>Flea ノミのように小さなPlack Syntax Sugar</title> </head> <body> <h1>Flea ノミのように小さなPlack Syntax Sugar</h1> <p>工事中</p> </body> </html>
で、psgiファイルを用意します。
flea.psgi
use Flea;
my $app = bite {
get '^/$' {
file 'index.html';
}
get '^/api$' {
json {
name => 'Flea',
ja => 'ノミ',
};
}
};
通常のpsgiではちょっとあり得ないほどシンプルになってます。特にルーティングまわり。podによると、このあたりはDancer譲りのようです。Dancer使ったことないので、よくわかってませんけど。
手元の環境は上位にロードバランサーがいるので、とりあえずそこからtcp4000番にバランシングするように予め設定しておきました。
で、起動ですね。今回はServer::Starter + Starmanで起こしてみました。(最速セットアップ案内 Catalyst on Starmanを参照。)
[root@nethard myflea]# start_server --port 4000 -- starman --worker 8 ./flea.psgi start_server (pid:901) starting now... starting new worker 902 Setting gid to "0 0 10 6 4 3 2 1 0"
ではブラウザでアクセスしてみます。
ちなみに、/psgi以下に今回のアプリを組み込みました。
まず、'/psgi/'にアクセス。
おお!当たり前ですが、うまくできてしまいました!!
さて次は、'/psgi/api'にアクセス。JSONが出ればOKです。
こちらもうまくいきました!
小さなサービスを作るときの手段としては、悪くないかも。


0 件のコメント:
コメントを投稿