2009年7月12日日曜日

BRIDGEの作り方

BRIDGEの仕組みは非常に簡単です。
大きく分けると下記2つの処理となります。
・Webインターフェース(表示と受付)
・動画ダウンローダ
(昔はここにエンコードが有りました…)

順に説明をしていきます。

■Webインターフェース
言語はPHPでZendFrameworkを使用して作成しております。
viewエンジンとしてSmartyを併用し、出力とキャッシュをしております。

■動画ダウンローダ
言語はPerlで行い、LWPやCrypt、HTTP、DBIなんかがモジュールとして使用しております。

もちろんBRIDGEのコアとなるのがこの「動画ダウンローダ」になります。
とはいっても中身は検索すると出てくるニコニコ動画ダウンロードPerlスクリプトを元に
データベースとの連携を組み合わせた物です。

中身はサービス化(常駐)させる為のノウハウがつぎ込まれていますが、
それ以外に特殊なことはしておりません。
(コードとしては300行にも満たない)

当初は複数サーバを動かしても行けるような設計をしているため、
データベースにはトランザクションが出来るように設計しています。
今は複数サーバを置くリソースが無いためオーバースペックとなっていますが…

あとは既に設計されている物は流用してでも機能の実現を目指したため
そこら中ガタガタだったりします。

こんなメモ見る人はいないかと思いますが、同様のサービスを作りたい人の
参考になればと思います。