読者です 読者をやめる 読者になる 読者になる

Spawningを使ってDjangoを動かす

Django Python Eventlet

以下はシングルプロセス・シングルスレッドの場合。プロセス数を増やすには-sオプションを、スレッド数を増やすには-tオプションを指定。

$ cd /paht/to/my_django_project/
$ PYTHONPATH=.. spawn --factory=spawning.django_factory.config_factory -s 1 -t 1 -p 8000 settings

「マルチプロセス・シングルスレッド」か「シングルプロセス・マルチスレッド」の択一になってしまうFastCGI(flup)や、単一のPythonバージョンしか利用できないmod_wsgiと比べるとあなどり難い存在。特定のファイルのタイムスタンプを監視して自動的に再起動、使用する最大メモリ量を制限するといった機能もある。

が、どうしてもPYTHONPATHの扱いが解せないのと、リクエスト処理が中断された時に少々おかしなレスポンスを返すような気がするので、もう少し検証が必要。Eventletの導入としては良い題材かもしれない。

c.f.