2015年8月10日月曜日

PyPy

本番に導入した事例があるようだ。

前勤めていた会社でも Python やら Django やらつかっていて、技術的に濃いところを知ってるプログラマさんが「PyPy どうだろうねー」と言っていたことがあった(2011~2012年くらい)。

その基本構成は 2009年末頃からさほど変わっていなかったので、「ウェブオペレーション」にもある




"常に5年後の計画を作るということだ。「今のソリューションは5年後も大丈夫か?」と自問自答しよう(以下略"

という教訓の通り、今もなおその構成が健在かつトラフィックが増してるなどして性能がプアで悩ましい状況が生まれていたとしたらちょうどいい解決策かも、と思った。
(まぁちゃんと計画してるんなら別の言語にしてるのだろうが・・・)

なので興味津津。

当時の PyPy, PyMySQL, uWSGI の状況は覚えてないけども「ちょっくらためしてみるか」と思えるほど整ってなかったかな。

2.5倍とかくと「おぉ〜」と思い、250%とかくと「まじで!?すごーーーーい」と思える。なんとなく。

PyPy's Speed Center
みると The geometric average of all benchmarks is 0.14 or 7.1 times faster than CPython とある。
 
感想としては
・お手伝い先の中の人の経験値になってるのかはなんとなく気になる(まるっとお手伝い元さんの成果だと評価されないんだろうな、とか今後の改善つらいのかなとか、その後の運用とかとか)
・開発環境はどうしてるかしら
・プロファイリングや種々の取り組み方などなどもきになる
・「Python アプリと言っても JSON 受け取ったり戻したりするウェブアプリなので、たいした構成では無い。」
から
「かなり複雑で巨大なWebアプリケーション、ユーザ数は 100 万以上。」となってるので、当初から適用箇所かわったのかな。

とか、

・Instagram や Pinterest のその後の構成が気になってきた
Pinterest は 2011年では 'heavyly-modified' Django だったり Tornado つかってたりする。
http://www.quora.com/What-is-the-technology-stack-behind-Pinterest-1
Instagram 3年前は: http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances
Disqus もたしか Django 使っている(いた?)ような。 
・Dropbox の pyston どうなってるのかしら
・同じノリ(?)でクックパッドさんが Rubinius にしたらどうなるのか
(そもそも PyPy の目指すところと Rubinius の目指すところが似てるのかすら知らないけど)

ちょいとぐぐってみると Quora が PyPy 使ってたらしき記事をみたけど、その後使わなくなってた。今は不明。http://www.quora.com/Is-Quora-still-running-on-PyPy
"The main reason for not switching to PyPy is its performance: in our case CPython + Cython version is noticeably faster (at least currently)." と。Django 絡んでなさそうな気がする。

そういやちょっと前に Cython 本、日本語版でてたね。

0 件のコメント:

コメントを投稿