Python+Webについてのメモ
途中、てきとーに更新していく。
はじめに
最近真面目にPython界隈の情報を集め始めたんだけど、Webサーバ周りは「なんか聞いたことあるけど、どういう特徴なのかよくわからん」ものがいっぱいだったので、調べてみる。
調べてみるのはとりあえずこの辺。
- Nginx
- gunicorn
- tornado
- meinheld
- uWSGI
大体調べたら次はDB周りを勉強したい。
Nginx
軽量高性能なWebサーバ/リバースプロキシであり、同時に電子メール(IMAP/POP3)プロキシである。
http://ja.wikipedia.org/wiki/Nginx
node.js調べているときに出てきた名前なので気になっていたもの。あと、ブログとか見てても使ってるPythonistaが多いと思う。なんか「軽量」って言葉には惹かれるよね。
前にNginxを置いて静的なコンテンツを配信、その後ろに動的なコンテンツを処理する別のサーバを立ててそっちに投げるという構成が一般的みたい。Pythonの場合、後ろに何を置くかというと、記事に初めに並べたNginx以降のものを使っているのがそう。まあ他にもいろいろあると思うけど、まずはよく使われてそうなところから調べていきたい。
node.jsもそうだけど、最近は非同期処理が人気のキーワードみたいだね。
apacheと比べると、速度面がもちろん大きなメリットなんだろう。あとは静的なコンテンツと動的なコンテンツでサーバを分けることが出来るから、スケールしやすいところがいいのかな?
逆にapacheを選ぶメリットとしては、安定性とか実績とかモジュールの豊富さだろうか。
どーでもいいけど最初は何て読むか分からなくて「えぬじんくす」って読んでたんだけど「えんじんえっくす」なんだよね。