前から少し気になっていたpythonを触ってみるために、題材としてisuconアプリをpythonで書いてみました。
ベンチマークテストをパスするので、一応一通りは動いているはずです。まだちょっと導入しやすい形にはなっていません。
memememomo/python-isucon - GitHub
isuconアプリは、rubyではsinatraが使われていて、perlとnodejsではsinatra風に書けるフレームワークが使われています。
なので、pythonでもsinatra風に書けるフレームワーク「Flask」を使いました。
他には、
テンプレートにはFlaskに付いている「Jinja2」を、
MySQLへの接続には「MySQLdb」というモジュールを、
動作環境にはApache2+mod_wsgiを、それぞれ使ってます。
ベンチマーク結果とかはまた後ほど。