!slug 1201

!date 2013/10/22

!draft false

!tags シングルページアプリケーション,AngularJS,BackboneJS,Deployd,Helios,Heroku,MBaaS,Monaca,MongoDB,Node.js,Parse,リソース指向アーキテクチャ

!! 最近はシングルページアプリケーション?リソース指向アーキテクチャ?要は今時のクライアントとサーバサイドの疎結合を追求してます。 クライアントサイドはAngularJSとかBackboneJSを比較してて小規模な場合はAngularJSで充分かなと思い始めてます。 サーバサイドはMBaaSで充分でParseやMonacaを触ってきて結局オープンソースのMBaaSの方が良いんじゃないかと思い始め…

最近はシングルページアプリケーション?リソース指向アーキテクチャ?要は今時のクライアントとサーバサイドの疎結合を追求してます。

クライアントサイドはAngularJSとかBackboneJSを比較してて小規模な場合はAngularJSで充分かなと思い始めてます。

サーバサイドはMBaaSで充分でParseやMonacaを触ってきて結局オープンソースのMBaaSの方が良いんじゃないかと思い始めてます。

オープンソースのMBaaSで触ってみたのはHeliosDeploydで、今回はNode.jsで書かれてるDeploydをHeroku上で使ってみます。

※HeliosについてはHelios - naoyaのはてなダイアリー、DeploydについてはオープンソースMBaaS「deployd」を使ってみるが詳しいです。

まず、Deploydをローカルで動かします。オープンソースMBaaS「deployd」を使ってみるにある通りです。

$ npm install deployd -g
$ dpd create <project-name>
$ cd <project-name>
$ dpd -d```

HerokuにデプロイするにはHerokuにアプリを作ってMongoHQ/Labアドオンを追加して以下のおなじみのファイルを追加します。

$ heroku addons:add mongolab:sandbox $ heroku config MONGOLAB_URI => mongodb://<username>:<password>@<host>:<port>/<database_name>```

MONGOLAB_URIの情報で以下のserver.jsを書き換えます。

あとは管理ダッシュボードの認証です。

以下のようにするとapp keyが生成されます。

$ dpd keygen
$ cat .dpd/keys.json
{"8f5e3bf2fde48da8c46ff63bd750991f2b520779b6b804a652160c26378b35b99b98f28145df30cc6942119f342d9f044be6a7b77c87c91f1cf5a7ee7c4470b404c9091ddff01087d5abbf727f2cafc4aeb4d1555b82f33fac05b5fa1ed8bd0b2d288e89c2f1a85ee8fd67c8fa31507a1fce0d6b4fe5691c5a10988679bd730c41bc17e29a4ca44dec22176950aeda87219438102fa105df5772fd7b326e20e9aaa3c83971cc1aa876ca016f019d27579d6ed5a5498d920311b5320dec4864c68e41c0c6e248c25dc27a50495b5034b238bd5a4b1e84ee0474c4eb5816992b497b33a91b0c086b54f19faaf24c9adfa98dac0b39f83847586c814f28c0308495":true}

keys.jsonファイルが生成された状態でHerokuにデプロイして管理ダッシュボードへアクセスすると以下のような画面になるのでkeys.jsonに記載されているapp keyを入力して認証します。

http://farm4.staticflickr.com/3677/10468391143_09f621cc1d.jpg

※2013年10月23日追記: