EY-Office ブログ

EY-Officeの吉田裕美が、まだ Ruby on RailsやiPhone開発を行ってない技術者や技術系マネージャー向けに、技術や教育に付いて書いています。

2012-06-18 サーバー・ネットワークエンジニア無しでもサービスが始められる

もしあなたが、良いWebサービスのアイデアが浮かび、資金の調達にも成功したとしましょう。
Webサービスの開発・運営に必要なエンジニアは

  • アプリケーション開発者:Ruby on Railsを使ってサービスを作るエンジニア
  • サーバーエンジニア: サービスを動かすサーバーマシンの調達、ハード、ソフトの設定、保守など
  • ネットワークエンジニア: インターネットへの接続、各種ハード、ソフトの設定、保守など

Webサービスを始めるの場合は、ホスティング業者のサーバーをレンタルしたり、クラウドサービスやVPSサービスを使う普通だと思います。この場合サーバーの購入やネット回線を接続したりというハードウェア周りを行うエンジニアは不要です。

Heroku

しかし、レンタルサービスやAmazonのようなクラウドサービスで提供されるのは、OSがインストールされたサーバーのみです。最低でも、Rubyや RDB、Apache、メールサーバーなどの基本的なソフトソフトのインストールと、その設定などが必要になります。

これらのソフトのインストール・設定は、とりあえず動くレベルであればそれほど難しくありません。ただし、セキュリティー上の問題が無く安全で、さらに高負荷への対応等を考慮すると広範囲な知識、経験のあるエンジニアが必要です。

また、サーバーの故障や各種ソフトウェアのセキュリティー上の問題が発見された際の対応などの保守も必要になります。


Amazonのようなクラウドは IaaS (Infrastructure as a Service) とよばれサーバーのハード、OS等までのサービスですが、クラウドサービースには PaaS (Platform as a Service) と呼ばれる アプリケーションを動かすベースとなる 言語、フレームワーク、 RDB、 アプリケーションサーバーのような基本的なソフトをまとめたアプリケーション実行プラットフォームのサービスがあります。

その一つとして、Ruby on Rails をサポートされている Heroku が注目されています。 Herokuは Rubyの開発者まつもとゆきひろ氏をチーフアーキテクトとして迎え 話題になりましたが、笹田さんや中田さんなどの有名なRuby開発者も雇っています。

Herokuを使うと、上で説明したような 基本的なソフトが要らないのはもちろん、サービスが成功しサーバーが高アクセスになっても簡単にスケールアップ(サーバーが増設される)機能を提供しています。
また、開発したアプリもコマンド一つで Heroku にデプロイ(インストール)出来、サーバー・ネットエンジニア無しでもサービスを開始、運用できます。

価格に付いては、 Heroku のホームページを参照して下さい。とりあえず試してみたいということであれば無料で使えます。現在は英語のページしかありませんが、Herokuの親会社の セールスフォース・ドットコム にはHeroku担当の日本人エンジニアもいますので ここ から日本語で問い合わせできます。

PaaSというと Google App Engine が有名ですが、独自色が強く Ruby on Rails のような一般的なフレームワークは使えませんでしたが、Heroku は Ruby on Rails を始め、JRuby, Node.js, Clojure, Java, Python, Scala など一般的な言語・フレームワークが使えるのも魅力の一つです。