最新の値上げをチェックして賢くお買い物!値上げニュース
Webクリップ

Q1:そもそもHerokuってなに?

Herokuは元々Ruby on Railsを対象とした、Amazon Web Services(AWS)のIaaS上に構築されたPaaSで、デプロイには分散リポジトリのGitを利用するなど、Webアプリケーションの開発から公開まで非常に簡単にできる優れたプラットフォームです。

Herokuは2010年にSalesforce.comにより買収され、Salesforce.comが掲げるソーシャルエンタープライズを実現させる中核の役割を担う要素の1つとして、現在ではRuby以外にもJava、Python、JavaScript(node.js)、Scala、Cloujureにも対応したマルチ言語なプラットフォームとなっています。

また、HerokuにはWebアプリケーション、特にソーシャルアプリケーションを開発する上で必要なアドオンが多数提供されており、ソーシャルアプリケーションとの連携や動画の配信なども簡単に開発する事ができます。

Q2:Force.comとはなにが違うの? 使い分けは?

Salesforce.comはForce.comというPaaSをHeroku買収以前から提供しており、単にWebアプリケーションを構築するというだけであればどちらでも実現可能なので混乱してしまいがちです。

基本的には、Force.comはSalesforceのSaaSを拡張するためのPaaSであり、HerokuはWebアプリケーションを開発するためのPaaSです。それぞれが生まれた背景が異なるため、提供されているツールも実行している環境も異なります。そのため、用途に応じて使い分けるというのがポイントになります。

基本的なアプローチとしては、社内向けのサービスにはForce.comを、社外の情報と連携させた自由度の高いアプリケーションのケースではHerokuといった棲み分けとなり、それぞれ利用用途が異なります。(下記参照)

  • Salesforce CRM(Sales Cloud)やService Cloud、Chatterとの連携したサイトを構築する場合
    • →Force.comを利用
  • 社内ポータルを構築したい場合
    • →Force.comを利用
  • FacebookなどのSNS上、またはSNSのデータと社内システムを連携させたアプリケーションを構築する場合
    • →Herokuを利用
  • 制約の少ない自由度の高いWebアプリケーションの開発の場合
    • →Herokuを利用

Q3:Force.comとは、どう連携するの?

Q2で回答したように、Force.comとHerokuでは利用する環境が異なるため基本的には別のシステムとなります。

そのため、Salesforce CRMとForce.comの関係のような密な連携や拡張は、Herokuでは実現できません。連携する手段は以下のいずれかの手段を使う事になります。

Webサービスによる連携

  • Force.comが提供しているSOAPを利用して直接Webサービスを呼び出す
  • Force.comが提供しているRESTサービスを利用して直接Webサービスを呼び出す

ActiveSalesforce(Ruby)、JPA(Java)を利用したデータ連携

  • Force.comの開発コミュニティが提供するActiveSalesforceやDatabase.comのモジュールとして提供されているJPAの機能を利用して、Heroku側から直接Salesforce内のデータにアクセスする

どちらでも連携は可能ですが、Webサービスによる連携は、Force.com側に呼び出し回数や通信上のデータ量の制約などがあるので、データ連携とトリガー機能を利用した連携をする方が良いでしょう(実際にはデータ連携もSOAP通信を利用していますが、Salesforceの制約を回避するように実装されています)。

ただし、注意しないといけないのは、Herokuは現在AWSの米国東部一部地域のみでしか提供されていないため(2012年5月10日時点)、Salesforceの環境が日本国内のデータセンターを利用している場合には通信上のレイテンシーの遅延が発生します。そのため、Heroku側にはレスポンスを30秒以内に返さないといけない制限があり、その制限に引っかかる可能性があります。

従って、連携する際には非同期ジョブを活用してバックグラウンドで連携するか、Herokuが提供する「Heroku Postgres」やHerokuのアドオンで利用できるAWSのRDSなどのDaaS(Database as a Service)を活用して(第3回で紹介します)非同期にニアリアルタイムで連携させる必要があります。

 

Q4:Herokuで開発するメリットってなに?

Herokuの強みにはいくつかありますが、ここでは開発と運用のそれぞれに着目していきたいと思います。

メリット その1:豊富な開発言語のサポートとアドオン、標準的な開発環境

Herokuの魅力の1つとして、Ruby以外にもJava、Python、JavaScript(node.js)、Scala、Cloujureといった多彩な開発言語のサポートがあります。アジャイル開発に適しているRuby(Ruby on Rails)や、最近注目を浴びているScalaをはじめ、エンタープライズでは幅広く利用されているJavaもサポートされているので、開発チームにとって最適な環境での開発が可能です。

また、Webアプリケーションでは頻繁に利用される機能、例えばSSLやメール配信、オンメモリキャッシュといった機能がアドオンとして提供されており、開発者はアプリケーション開発に集中することができ、短期間でシステムを実行させる環境が提供されます。

2つ目の魅力として、デプロイ環境が挙げられます。アプリケーションのデプロイには分散バージョン管理システムであるGitを使用し、ビルドツールにはJavaであればMavenを使用します。これによりリソースのバージョン管理からビルド、アプリケーションのデプロイまでをスムーズに行なうことが可能です。

Herokuが提供するこのデプロイ環境は、開発からデプロイまでのコストを最小限に抑えることができます。このことは、継続的にシステムに機能を追加して成長させていくアジャイル開発に非常に適しており、Herokuの強みの1つであると考えられます。また、Herokuの環境に依存したツールを使うわけではないので、クラウド環境にみられるベンダーロックインの心配が少ないという点も非常に大きな魅力とも言えるでしょう。

メリット その2:スケールアウト

Herokuで実際にアプリケーションを稼働させた際に、Herokuの提供するスケールアウトの容易性は非常に高い点が挙げられます。他のクラウド環境では、スケールアウトが可能なようにインフラ面からの設計が必要ですが、Herokuを使用する場合はその必要がほとんどありません。

Herokuはアプリケーションをdynoと呼ばれるプロセス単位で実行させることができ、アプリケーションにかかる負荷に応じて実行プロセス数を調整することが可能だからです。アクセス数が多くなったり、比較的重い特定の処理を行なわせる繁忙期のようなときにだけ、dyno数を上げることでアプリケーションがスケールアウトします。

スケールアウトはHerokuのサイト上からでも可能ですし、コマンドラインから実行する事も可能です。また、「Hero Scale」というHerokuアプリのDynos/Workerをオートスケーリングさせるサービスもあります。

メリット その3:運用をサポートする標準機能

Herokuが提供する機能には、開発に利用する機能の他にも、ログの確認やパフォーマンスのモニタリング、データベースのバックアップといった運用をサポートする機能も含まれています。長期的なシステム運用には運用設計が必須になりますが、Herokuが運用のための機能を容易に扱える環境を提供することで、運用コストを抑えることに繋がるでしょう。

このようにHerokuは、アプリケーションの開発に注力させ、アジャイル開発を適用させやすい環境を提供している点が非常に大きな魅力となっています。

Q5:Herokuと一緒に検討すべきサービスは?

Herokuはクラウドサービスの中でPaaS(Platform as a Service)に分類されます。他社が提供するPaaSには、Googleの「Google App Engine」、Microsoftの「Windows Azure」、Amazon Web Servicesの「AWS Elastic Beanstalk」などがあります。

利用するサービスの選定には、稼働させるアプリケーションの特性にもよりますが、Windows AzureとAWSはVPN、またAWS Elastic Beanstalkは専用回線による接続をサポートしていることから、業務用途での利用に適していると言えるでしょう(Windows Azureはまだベータ提供かつクライアントベース)。

一方で、Herokuは外部公開のアプリケーション構築や、外部ソーシャルサイトと連携したアプリケーション構築に向いたプラットフォームという位置づけになります。特にFacebookには専用プランが用意されているので、Facebookアプリケーションを容易に作成することができます。逆に既存の業務システムのクラウドへの移管にはあまり向いておらず、そのようなケースではBeansTalkを含むAWSの利用が向いています。

最新ニュース

  • GMO 被害者情報集める不審サイト ハッカー側と関連か | NHKニュース
    2026年10月31日 に PM 4:20 に

    GMOインターネットグループのサービスが不正アクセスを受けた問題で、被害者に情報共有を呼びかける不審なサイトが公開されていたことがセキュリティー会社の調べで分かりました。 被害が公表されるより前に開…

  • メロ井くん - 吉野ぽかん | 少年ジャンプ+
    2026年10月31日 に PM 3:01 に

    メロ井くん 吉野ぽかん 女子を次々とメロメロにする、最強に「メロい」男子・メロ井くん。けれど同級生の黒咲さんだけは、まったくなびかない。彼女を振り向かせようと、あの手この手でアプローチするが…?自信満々男子の空回りラブコメ読切!

  • [第26話]無敵のスバル - 成田成哲 | 少年ジャンプ+
    2026年10月31日 に PM 3:01 に

    無敵のスバル 成田成哲 <毎週日曜更新!最新2話無料>拳と蹴りで決着をつける実践格闘空手——フルコンタクト。高校1年生の神薙昴は初めてフルコンの大会に出場。彼を待ち受けるは強者のみ。だがこの時、昴の力量はまだ誰も知らなかった… [JC2巻発売中]

  • [第7画目]イッピツアヤル - 横山左 | 少年ジャンプ+
    2026年10月31日 に PM 3:00 に

    イッピツアヤル 横山左 <隔週日曜更新!最新3話無料>読み方が難しいせいで、人生で一度も下の名前を呼ばれたことがない高校2年生の加賀見斐。そんな彼は、書道部の鎮西みやびに恋をする。彼女に近づきたい、その一心で書道部の門を叩いた斐だったが…恋心を墨にのせた青春が始まる! [JC1巻12/4発売予定]

  • [第128話]ふつうの軽音部 - クワハリ/出内テツオ | 少年ジャンプ+
    2026年10月31日 に PM 3:00 に

    ふつうの軽音部 クワハリ/出内テツオ <毎週日曜更新!最新3話無料>ちょっと渋めの邦ロックを愛する新高1・鳩野ちひろ。新品のギターを背に軽音部の門を叩くも――!?「次にくるマンガ大賞2024」Webマンガ部門 第1位&「このマンガがすごい!2025」オトコ編 第2位!! ※作品内使用楽曲はJASRAC申請中 [JC12巻発売中]

  • ミーム構文「ケーキ屋店員が思ってること」で「指差すのやめて」に「なら番号を振ってほしい」の反応が集まる…ていうか「箱いりません」って言う猛者いるんだ?
    2026年10月31日 に PM 2:40 に

    もちもち @mocimoci001 ケーキ屋店員が思ってること ・4号サイズのホールはだいたい2〜3人用です ・5号サイズのホールはだいたい3〜5人用です ・指差すのやめて ・賞味期限はラベル通りとしか言えないです ・小物ケーキにもプレートは乗せれますよ〜☺️ ・箱いりません!!??!!??!!? ・持ち帰りの時間は30分単位...

  • Pikmin Day Direct
    2026年10月31日 に PM 2:25 に

    【Pikmin Day Direct】 https://www.nintendo.com/jp/nintendo-direct/20261031/index.html 【任天堂ホームページ】 https://www.nintendo.com/jp/ 動画に含まれる情報は公開日時点のものです。

  • アカウンタビリティを軸とした AI-Native 開発のデザイン戦略
    2026年10月31日 に PM 2:22 に

    アカウンタビリティを軸とした AI-Native 開発のデザイン戦略



出典:公式総合情報データベースサイト「coron」 執筆者 : .

管理人のアンテナlive!


coronでは、サイトの利用状態の記録解析やパーソナライズ機能を利用するために、Cookieなどを使用してアクセスデータを取得・利用しています。
利用を続ける場合、これらの情報の取得・利用及びウェブサイト利用規約に同意したものとみなします。以下から詳細及びオプトアウトについてご確認ください。

ウェブサイト利用規約    
掲載されている広告について    
推奨環境