連載 :
ARCによるWebアプリの新しいつくり方Herokuのアドオンと外部サービスを活用しよう
2011年4月1日(金)
前回は、ARCのC(クラウド)にあたる要素として、RubyのPaaSである「Heroku」の特徴と使い方を解説しました。最終回の今回は、「Heroku」で利用可能なアドオンと、SonicGardenで利用している外部サービスについて解説します。
これまでの連載をすべて読むことで、 ARCを実践するノウハウをじゅうぶんに理解できるはずです。
Herokuのアドオン
Herokuでは、Webアプリケーションのパフォーマンスを向上させるためのアドオンから、運用を簡素化するためのアドオンまで、多種多様なアドオンが提供されています。
アドオンの中には、まだPublic Beta扱いのものもいくつかありますが、正式に提供開始されているアドオンも数多く存在します。利用を開始する前に、どのようなアドオンがあるのか、一通り目を通しておくことをすすめます。
表1: Herokuで利用可能なアドオン一覧
アドオン名 | 概要 |
---|---|
Amazon RDS | PostgreSQLが標準のRDBMSですが、Amazon EC2を利用して起動したAmazon RDSのインスタンスに接続可能となり、MySQLが利用できるようになります。 |
Apigee for Facebook | Facebookと連携するようなWebアプリケーションを作成する際に利用すると、Google Analyticsのような管理UIでAPIの情報を確認できるようになります。 |
Apigee for Twitter | Apigee for Facebookと同様に、Twitterと連携する際にAPIの情報を確認できるようになります。 |
Appoxy SimpleWorker | Delayed_jobのように、バックグラウンド・ジョブを実行させることができるようになります。 |
Chargify | PaypalやGoogle Checkoutのように、オンライン決済機能を提供してくれます。 |
CloudMailin | Webアプリケーションに対してメール・アドレスが付与され、メールの受信が可能となります。 |
Cloudant | Key-ValueストアのCouchDBを簡単に利用できるようになります。Free版を含む5つのプランが用意されており、ストレージ容量や冗長構成などが異なります。 |
Custom Domains | 独自ドメインをWebアプリケーションに割り当てることができるようになります。有料プランではワイルド・カード・ドメインにも対応しています。 |
Cron | 定期バッチ処理(Windowsではschedule、Linuxではcronにあたる)を実行させることができます。日次での実行はFreeですが、1時間単位での実行は有料となります。 |
Deploy Hooks | HerokuにWebアプリケーションのソース・コードをデプロイした際に、EmailやBasecamp、IRCなど、登録している通知先に通知してくれます。 |
Custom Error Pages | メンテナンス画面やシステム・エラー発生時に表示させるエラー画面をカスタマイズできるようになります。 |
DocPaptor | シンプルなHTMLを送信すると、PDFやExcelに変換してくれます。 |
Exceptional | Ruby On RailsのWebアプリケーションで発生したエラーを検知したら、Email、SMS、Campfire、Twitterなどで、登録しているメンバーにエラー通知をしてくれます。 |
Hoptoad | Webアプリケーションで発生したエラーを検知し、それらのエラー情報をHoptoadのWebサービス上で管理/確認できるようになります。 |
IndexTank Search | Webアプリケーションにリアルタイム検索機能を簡単に組み込むことができるようになります。 |
Jasondb | Key-ValueストアのJasonDBを簡単に利用できるようになります。 |
Memcache | メモリー・キャッシュ機構を利用してWebアプリケーションの動作パフォーマンスを高速化できるMemcacheを利用できるようになります。 |
Logging | Webアプリケーションおよびルーティングのログなどを確認することが可能となります。 |
MongoHQ | Key-ValueストアのMongoDBを簡単に利用できるようになります。 |
Moonshado SMS | WebアプリケーションからSMSを送信できるようになります。 |
NewRelic | Webアプリケーションのパフォーマンスを簡単に、かつ、さまざまなパラメータを計測できるようになります。また、チューニングすべきポイントを示してくれます。 |
Panda Stream | 動画データのアップロード/エンコーディング/ストリーミング配信ができるようになります。アップロード可能データ容量や同時エンコーディング処理数などに応じて、3つのプランが用意されています。 |
PG Backups | PostgreSQLのデータバックアップやリストアを簡単に実施することが可能となります。 |
Pusher | HTML5のWebsocketを利用して、リアルタイムWebを実現することができるようになります。 |
Redis To Go | Key-ValueストアのRedisを簡単に利用できるようになります。データ容量やバックアップ頻度などに応じて、7つのプランが用意されています。 |
Recurly | Webサービスに簡単に有料会員制の仕組みを導入できるようになります。 |
Release Management | Webアプリケーションのバージョンを管理し、バグが含まれるアプリケーションをリリースしてしまった場合に、以前の状態に切り戻せるようになります。 |
SSL | WebアプリケーションにSSL(https)でアクセスできるようになります。 |
Sendgrid | WebアプリケーションからEmailを送信できるようになります。送信数に応じて、3つのプランが用意されています。 |
Ticketly | バグ/課題管理ツールであるTicketlyと連携できるようになります。 |
Tronprint | Webアプリケーションの二酸化炭素排出量が分かるようになります。 |
Websolr | WebアプリケーションにSolrの検索エンジンを簡単に組み込むことができるようになります。ドキュメント数に応じて4つのプランが用意されています。 |
Xeround Cloud Database | MySQL互換のクラウドRDBであるXeroundを利用することができるようになります。 |
Zerigo DNS | DNSの設定ができるようになります。Webアプリケーションに割り当てるドメイン/ホスト・レコード数やリクエスト数に応じて、3つのプランが用意されています。 |
Zencoder | 動画データのアップロード/エンコーディング/ストリーミング配信ができるようになります。エンコードした動画データの再生時間に応じて、5つのプランが用意されています。 |
このように、豊富なアドオンが用意されています。今後も多くのアドオンが追加されていくことでしょう。なお、これらのアドオンを利用するためには、Herokuにログインした後に、こちらの"Billing info"にて個人情報を登録する必要があります。
次ページからは、上記のアドオンの中から、SonicGardenが提供しているWebサービスで利用しているものについて、詳しく紹介します。
なお、上記アドオンは、Herokuが提供するアドオン・プログラムに対応しているのはもちろんですが、基本的にすべてクラウド(SaaS)で独自にサービスを提供しているため、Herokuを利用していなくても一度利用してみてはいかがでしょうか。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。