開発メンバーがおくるKaresansui技術解説 - OSSライブラリ編

| | Comments (0) | TrackBacks (0)

こんにちは、しのはら です。


先月の5月28日にKaresansui1.0.0をリリースしましたが、オフィシャルサイトでも あまり技術的なことには触れていません。(今後充実させていきます)


ですので、ここで簡単ですが使われている技術やOSSライブラリ等々を簡単に説明させてもらいます。


今回は、Karesansuiで利用されているOSSの解説です。
Karesansuiは、以下のようなOSSを利用して動作しています。


- libvirt

Karesansuiの肝となる部分で、ハイパーバイザーを抽象化してくれるライブラリです。

これがなかったらリリースはもっと伸びていたと思います。

- lighttpd

軽量で高速なWebサーバーです。

管理画面を表示するために使っています。

- openssl

暗号関連のライブラリです。

- Mako

Python用のテンプレートエンジンです。

- SQLAlchemy

Python用のデータベース抽象化ライブラリ(ORM)です。

高機能でKaresansuiではSQL文を書くことがありませんでした。

- flup

若干語弊があるかもしれませんが、FastCGIで動作させるためのライブラリです。

- simplejson

Python用のJSONライブラリです。

RESTでJSONの表現を返却する部分で使用しています。

Python2.6から標準ライブラリとして取り込まれています。

- webpy

Python用の軽量Webフレームワークです。

RESTとの親和性が高く、KaresansuiのRESTfulな実装に役立ちました。

- pysilhouette

Pythonで実装されたジョブマネジャーです。

HDEがリリースしたもう一つのオープンソースです。

- TightVNC

Javaで実装された、VNC Viewerです。(実行時にはクライアントにJREが必要です。)

- pysqlite(SQLiteを利用する場合)

Python用のSQLiteアクセスライブラリです。

- psycopg2(PostgreSQLを利用する場合)

Python用のPostgreSQLアクセスライブラリです。

- MySQL-python(MySQLを利用する場合)

Python用のMySQLアクセスライブラリです。

- JQuery

JavascriptのAjaxライブラリです。

- JQuery UI

JQuery用のUI拡張プラグインです。

タブ、アコーディオン、ダイヤログ、カレンダ等を使っています。

- jCarousel

JQueryのプラグインでカルーセル表示ができます。

タグの表示で使っています。

- Tablesorter

JQueryのプラグインで、テーブルのソートやページングができます。

- JQuery Form

JQueryのプラグインで、画面推移をしないFormを利用できます。

アイコンのアップロードで使っています。

- Autocomplete

JQueryのプラグインで、フォームの入力値を補完することができます。

IPアドレスの補完で使っています。

- clueTip

JQueryのプラグインで、ツールチップを表示できます。

ヘルプ表示で使っています。


上記の紹介させて頂いたOSSがなければ、Karesansuiはリリースできませんでした。

これらのOSSプロジェクトには猛烈に感謝しています。

0 TrackBacks

Listed below are links to blogs that reference this entry: 開発メンバーがおくるKaresansui技術解説 - OSSライブラリ編.

TrackBack URL for this entry: http://lab.hde.co.jp/blog/mt-tb.cgi/128

Leave a comment

About this Entry

This page contains a single entry by junichi shinohara published on June 3, 2009 12:00 PM.

オープンソースのバックグラウンドジョブマネージャー Pysilhouette の紹介 was the previous entry in this blog.

たまにはWebのサービスでも見てみようじゃないか is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.