Personal tools

YouTubeはPythonとpsycoが支えている

by ats posted at 2009-10-19 10:06 last modified 2009-10-19 22:57

What Powers YouTubeから。大量のアクセスをテキパキとさばくYouTubeを支えているソフトウエアの構成が面白い。

  • Apache (HTML, JavaScript, CSS)
  • Python
  • Linux (初期はSuSe,現在はいろいろ)
  • MySQL (5.x, Google内製のクラスタリング技術でそうとうカスタマイズされている)
  • psyco, (Python -> Cの動的コンパイラ)
  • lighttpd (動画配信に利用)
  • GFS (Google File system)

ほとんどオープンソースで,特別なものは使っていなくて,特にフロントエンドに近いところはかつシンプルに構成されていることがわかる。DB部分がMySQLベースでバリバリにカスタマイズされているのも興味深い。そのうちBig Tableに移行したりするんだろうか。

YouTubenのほとんどの部分はPythonで書かれている というのは知ってたけど,psyco(Python -> Cコンパイラ)を使っているというのは知らなかった。プリプロセス,キャッシュなども有効に使っているんだろうけど,アプリケーションサーバのロジック部分はPythonだけで書かれたシンプルでモノリシックな構成になっているわけだ。

追記

tokuhiromのブクマコメントもらって調べてみたら,psycoのintroduction

  Think of Psyco as a kind of just-in-time (JIT) compiler (snip)
  that emit machine code on the fly instead of interpreting
  your Python program step by step.

とあるので,マシンコードを生成しているらしい。psycoはCコンパイラ用のコードを生成するわけじゃないのね〜。

と言うことで追記で訂正:-)。

Category(s)
python
The URL to Trackback this entry is:
http://coreblog.org/ats/youtube-is-python-and-psyco-powerd/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
(Required)
コメントスパム避けのための認証文字列です

Captcha Image

Pythonな求人
r = urlopen("http://www.webcore.co.jp/recruit")
About this blog
■Author


atsこと柴田淳です。この記事を読んでいただくと,技術者としての人となりを分かってもらえるかも。
Webcore株式会社 代表取締役
Plone上で動く,オープンソースのBlog Product - COREBlog2を使って運用しています。

最近書いた原稿
最終回 Python 3.0座談会(動画つき) 2009-07-16
Python 3.0 Hacks 第6回 Pythonicな文字列フォーマットforamat()メソッド 2009-03-30
言語としての一貫性を重視したPython 3の進化 2009-02-20
Python 3が後方互換性を捨てても求めたもの 2009-02-02
Python 3.0 Hacks : 第0回 Pythonの2008-2009 2009-01-01
 
最近書いた本,Mook
みんなのPython 改訂版
Python使いはもちろん,プログラミングの初心者から,他言語からの移行組までご好評いただいているPythonの定番入門書の第2版です。Python 3.0を含む最新の情報について加筆を行い,より読みやすいように構成を大幅に見直しました。第一版をお持ちの方にもお役立ていただける内容になっています。
みんなのPython Webアプリ編
Pythonの基礎から,Webアプリやフレームワークの仕組みまで,つまることなく一気に学べる書籍です。「みんなのPython」と一緒に読んでください:-)。
 

Powered by Plone, the Open Source Content Management System