最新の値上げをチェックして賢くお買い物!値上げニュース
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の利用が向いています。

最新ニュース

  • 捜査が「わたし」をつくりかえる:Disco Elysiumにおけるプレイスタイルとナラティブ|遊星歯車機関
    on 2025年12月17日 at AM 11:24

    文・murashit 気がつくと、見知らぬ安ホテルの床にパンツ一丁で転がっている。最悪の宿酔い。昨日の記憶どころか、自分が誰なのかさえ思い出せない。鏡を見る。これが自分だって? ほんとうに? 『Disco Elysium - The Final Cut』(ZA/UM, 2020)の幕開けです。 なんだか理不尽な気が……いや、ぼやいたって仕方ありませ...

  • 赤坂の高級個室サウナで夫婦が死亡した事故、非常ボタンの電源が切れていた「もはや事故じゃなくて防げた人災では」
    on 2025年12月17日 at AM 11:23

    ライブドアニュース @livedoornews 【判明】赤坂・高級個室サウナで夫婦死亡、非常ボタンが「電源切れ」だった news.livedoor.com/article/detail… 夫婦は個室に閉じ込められ、非常ボタンを押したとみられる形跡があったが、火事が発生した当時も電源が切れ作動していなかったとみられる。警視庁は、17日に司法解剖して...

  • Miss Finland's viral 'slanted-eyes' photo stirs racism firestorm
    on 2025年12月17日 at AM 10:31

    Miss Finland Sarah Dzafce said in the viral photo that she was "eating with a Chinese". Finland's delegate to last month's Miss Universe pageant held in Thailand has sparked controversy and outrage after a photo of her pulling the corners of her eyes went viral. Sarah Dzafce, who has been strippe...

  • 赤坂サウナ店火災 “非常ボタン受信盤の電源入れたことない” | NHKニュース
    on 2025年12月17日 at AM 9:53

    東京・赤坂のサウナ店の個室で夫婦2人が倒れ死亡した火災で、店のオーナーが警視庁の聞き取りに対し、事務所にある非常ボタンの受信盤について「今までに一度も電源を入れたことがなかった」などと説明していること…

  • 118韓国軍サイバー部隊
    on 2025年12月17日 at AM 9:46

    動画編集講座はこちら https://www.dogaedit.com ------------------------------------------------------------------------------------------------ DEEP DIVE HP https://deepdive.or.jp/ クラウドファンディング目標達成! ご支援ありがとうございました! https://camp-fire.jp/projects/821287/view -----------...

  • 非常ベル電源「2年前から入れていない」、押した形跡も サウナ火災:朝日新聞
    on 2025年12月17日 at AM 9:32

    東京・赤坂の個室サウナ店で15日、男女2人が死亡した火災で、現場室内にあった非常用ベルと事務室をつなぐ装置の電源について、従業員が「2年ほど前から入れたことがない」と警視庁に説明したことが、捜査関係…

  • Claude CodeからPull Requestのレビュー操作を便利に行うClaude Skillsを作った - $shibayu36->blog;
    on 2025年12月17日 at AM 9:05

    Claude CodeやClaude Code Actionを用いて、AIに自律的にPull Requestのレビューを行なってもらうとき、いくつかの課題があった。その解決のためにPull Requestのレビュー操作に特化したgithub-pr-review-operationというClaude Skillsを作ったので紹介します。 課題 次の3つの課題があった。 インラインコメントを付け...

  • 株式会社メルカリと資本業務提携契約を締結いたしました
    on 2025年12月17日 at AM 9:04

    〜メルカリと駿河屋で日本最大級の品揃えと安心・安全な取引環境を構築。グローバルOMOを推進し、日本文化を世界へ〜 株式会社メルカリ(本社:東京都港区、代表執行役 CEO:山田進太郎、以下「メルカリ」)と、株式会社駿河屋(本社:静岡県静岡市、代表取締役社長:杉山綱重、以下「駿河屋」)は、日本が強みを持つエ...



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

管理人のアンテナlive!


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

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