RESTfulは一昨年くらいから出てきた技術的な用語だが、一般的なシステム開発においてどのようなメリットがあるだろうか。まず第一にデータベースとアプリケーションサーバを切り離すことができる。いわゆるデータとシステムの疎結合だ。

ピクチャ 98.png

デモアプリケーション

 

第二にアプリケーションのインタフェースに様々な選択肢が増えるようになる。Webシステムに限らずiPhoneやコマンドラインでの操作も容易だ。そしてデータの置き場所も制限がなくなるのだ。そう、その夢を感じさせてくれるのがApp Engine Rest Serverだ。

今回紹介するオープンソース・ソフトウェアはApp Engine Rest Server、Google App Engine(GAE)をRESTfulサーバにするソフトウェアだ。

GAEをRESTfulに対応したサーバにするとどうなるか。それは無制限とも言えるストレージをHTTPベースで利用できるということだ。アプリケーションサーバはPythonにこだわる必要もない、RailsだろうがJava、Perl、PHPでも何でも良い。

ピクチャ 97.png

GETで取得できるリスト。XML形式だ。

 

言わば無制限のデータストレージだ。しかもそれが特殊なソケットでも何でもない、HTTP通信で利用できるようになる。例えばブログの記事はApp Engine Rest ServerでGAE上に保存し、認証部分などのコアだけを手元のサーバで管理するような使い方も考えられる。

GET/POST/PUT/DELETEを使って個別のデータを取得、作成、更新、削除ができる他、GETにパラメータを渡すことで検索もできるようになる。検索条件はイコール、以上/以下、Inが使えるようになっている。

Webインタフェースは独自のものを使え、iPhoneやクライアントライブラリも容易に作成できる。App Engine Rest Serverにかかる期待は大きそうだ。

 

**appengine-rest-server -Google Code

 **
http://code.google.com/p/appengine-rest-server/