Saturday 11:30 a.m.–12:15 p.m.
Djangoアプリケーション、パフォーマンスチューニング (ja)
Hiroki KIYOHARA
- Audience level:
- Intermediate
- Category:
- Web Systems / Webシステム
Description
Webアプリケーションを作る。それだけで終わっていませんか?十分なパフォーマンスはでていますか?
そんなWebアプリケーション開発者の皆様にDjangoアプリケーションのパフォーマンスチューングの紹介です。
どうすれば高速に作れるか。なにが速度を低下させているのか。そもそもどうパフォーマンスを計測すればいいのか。それらの疑問に答えます。
このセッションを見終わったとき、あなたは今すぐにでも業務アプリケーションをチューニングしたくなるでしょう。
Abstract
ターゲットとしては普段業務などでDjangoを使ったWebアプリケーション開発をしている人々です。
とくに、曖昧にパフォーマンスを測定したり、とくによくわからずリリース時にお祈りをしている人たちが対象です。
まずは高速化について、DjangoのORMで、無駄なクエリを吐きがちな書き方を、その解法とともに紹介します。次にWebアプリケーション開発時におけるキャッシュの重要性や、正確かつ効果的な適応方法を紹介します。とりあえずテキトーにキャッシュしまくるのは、無駄が多いだけでなく、アプリを複雑にしてしまいます。また、疎かになりがちなセッションやキャッシュの設定の見直しや、Redisを使ったRedisならではの効果的なキャッシュを紹介します。
次に「そもそもネックは何か」を発見していきます。django-debug-toolbarやdjango-devserverを使ったボトルネックの発見。「これは怪しいぞ」というソースコードの紹介をします。
また重要な点としてパフォーマンスの測定について解説します。FunkloadというPython製ツールを使ったわかりやすい負荷試験の方法や、そのリザルトの読み方、ボトルネックの発見方法を紹介します。
これだけ把握すれば胸を張ってWebサービスをリリースできるようになります。
(全部話せなかったらごめんなさい>< そのときはまた別途ご紹介します