Herokuとは?概要や料金、使い方から類似Paasサービスまで徹底解説!

公開日  reload 

この記事をシェアする

x facebook
Herokuとは?概要や料金、使い方から類似Paasサービスまで徹底解説!

この記事でわかること

  • Herokuの基礎知識
  • Herokuでできること
  • Herokuを利用するメリット
  • Herokuの料金プラン
  • Herokuと比較されるサービス
  • Herokuの使い方(実際のデプロイ手順)

執筆者 取締役 / CTO 内山文裕

Salesforceの導入や活用のお困りごとはプロにご相談ください

  • Herokuの料金体系やプランの違いを踏まえて、自社に合った構成を検討したい
  • Heroku Connectを使ってSalesforceとリアルタイム連携したアプリケーションを構築したい
  • Herokuの無料プラン廃止に伴い、適切な代替サービスを選定・移行したい
このようなお困りごとがありましたら、ぜひとも私たちStrhにご相談ください。Salesforceや営業・マーケティングに精通したコンサルタントが、御社に最適なソリューションをご提案させていただきます。まずはお気軽にお問合せください。 Salesforce活用についてまずは相談する

Heroku(ヘロク)は、クラウド環境でアプリケーションの開発・運用を一元化できるPaaS(Platform as a Service)です。インフラの構築や管理の負担を軽減し、開発者が迅速にアプリケーションを構築・デプロイ・運用できるように設計されています。特にスタートアップや小規模ビジネスの開発者に利用されています。

本記事では、Herokuの基本概要や特徴、料金プラン、メリットに加え、よく比較されるサービスについて詳しく解説します。Herokuの導入を検討している方や、代替サービスを探している方は、ぜひ参考にしてください。

参照:Salesforce(セールスフォース)とは?製品群や機能、メリット・デメリットを簡単に解説!

Herokuとは

Herokuはクラウド環境上でアプリケーションを開発・デプロイ・運用するためのPaaSです。従来、アプリケーション開発を始めるためにはサーバーの設定やインフラ管理に多くの時間やコストがかかっていました。また、アプリ公開後にも利用者が増えればサーバー環境の増強が必要となり、その際にも手間がかかります。

しかし、Herokuを利用することで開発者はインフラの管理を気にせず、アプリケーション開発に集中することができます。

Herokuの歴史

Herokuは、日本初のWebアプリケーション開発に適したプログラミング言語であるRuby専用のホスティングプラットフォームとして2007年に誕生、Rubyをベースにしたフレームワーク「Ruby on Rails」開発者向けのPaaSとして高い人気を得ました。

その利便性が評価され2010年にSalesforceによって買収されました。その後、Node.js、Python、Java、PHPなどの主要なプログラミング言語にも対応し、多くの開発者に利用されるプラットフォームとなりました。

PaaSとは?IaaS・SaaSとの違い

クラウドサービスにはPaaS(Platform as a Service)、IaaS(Infrastructure as a Service)やSaaS(Software as a Service)といった3つの形態があります。

クラウドサービス概要代表例
IaaS(Infrastructure as a Service)仮想マシンやストレージなどのインフラを提供するクラウドサービス。・AWS EC2・Google Compute Engine
PaaS(Platform as a Service)アプリケーションの開発・実行環境を提供するサービス。・Heroku・Google App Engine
SaaS(Software as a Service)アプリケーション自体をクラウド経由で提供する形態。・Google Workspace・Salesforce

PaaSの特徴はアプリ開発者がサーバーのセットアップやインフラ管理に時間をかけることなく、アプリケーションの開発に専念できる点にあります。HerokuはこのPaaSの利点を活かし、シンプルなデプロイと拡張性の高い環境を提供することで、多くの開発者に支持されています。

PaaS・IaaS・SaaSの違い

Herokuで実現できること

Webアプリケーションの開発・デプロイ

HerokuはGitを活用したシンプルなデプロイプロセスを提供しており、開発者はコマンドを実行するだけでアプリケーションをHeroku環境にデプロイできます。また、Node.js、Python、Java、PHP、Goなどの複数のプログラミング言語をサポートしており、さまざまな開発ニーズに対応可能です。

運用管理の効率化

Herokuには「Heroku Dashboard」という管理ツールが用意されており、直感的にアプリケーションの状態を確認できます。また、ログ管理やエラーモニタリング機能も充実しており、開発者はアプリの動作状況をリアルタイムで把握しながら、必要な対応を迅速に行うことができます。

スケーリングの自動化

Herokuは「Dyno」と呼ばれるコンテナベースのアーキテクチャを採用しており、トラフィックの増加に応じて自動的にスケールアップ/スケールダウンを行うことが可能です。リソースを最適化し、コスト削減を可能にします。

豊富なアドオンによる連携

Herokuには多くのアドオンが用意されており、データベースや分析ツール、メール配信サービスなどと簡単に連携できます。

■連携サービスの一例

  • Heroku Postgres, Redis(データベース管理)
  • SendGrid(メール送信)
  • New Relic(アプリ監視・パフォーマンス分析)

Herokuを利用する4つのメリット

開発スピードの向上

Herokuは開発者のインフラ管理の負担を軽減し、アプリケーション開発に専念できる環境を実現します。サーバーのセットアップや保守にかかる工数を削減することで、開発スピードの向上を実現し、迅速なプロジェクト進行を可能にします。

コストパフォーマンスの良さ

Herokuは従量課金制を採用しており、使用した分だけ費用が発生します。そのため、初期投資を抑えながら、必要なリソースに応じた効率的な運用が可能です。

拡張性の高さ

Herokuはデータベースやモニタリングツールなどのアドオン機能を簡単に追加でき、開発者のニーズに応じて機能を拡張することができます。また、トラフィックの増加に応じてリソースを自動で調整できるため、安定したアプリ運用が可能です。

Salesforceとのシームレスな統合

Heroku Connectというアドオン機能を活用することで、Salesforceの中の連絡先や取引先、カスタムオブジェクトのデータとHerokuをリアルタイムで簡単に同期できます。APIを使用せずにHerokuとSalesforceのデータを双方向連携できるため、Salesforceの情報を活用したアプリ開発やモバイルアプリとの統合、データの集計・レポート作成が簡単に実現できます。

Heroku Connect(へロクコネクト)とは

SalesforceとHerokuを連携した活用例

ここでは、SalesforceとHerokuを連携することで実現できる具体的な活用例を2つご紹介します。

事例①:ECサイトの顧客データ統合

アパレル系EC企業A社では、自社開発のECサイト上で顧客の購入履歴やカートへの商品追加など顧客履歴を収集していました。一方で、顧客情報に関してはSalesforce Cloudで管理していました。しかし、ECサイトとCRMのデータは分断されており、マーケティング施策に活かしきれていませんでした。

そこで、Herokuを活用してカスタムWebアプリを構築し、Heroku Connectを通じてECサイトのデータとSalesforceを連携しました。ECサイトが持つ顧客の購入履歴や行動データをCRMと同期することで、「直近1ヶ月以内に特定商品を複数回閲覧したが未購入の顧客」などの条件でSalesforce上で顧客を抽出し、パーソナライズされたレコメンドや限定オファーを配信できるようになりました。

事例②:モバイルアプリとSalesforceのデータ同期

不動産会社のB社では、営業スタッフが物件の内覧を終えたあと、顧客情報や物件データをSalesforceに入力する必要がありました。

しかし、日中は社外で複数件の案内に追われるため、入力作業はすべて帰社後にまとめて実施。結果として、対応の遅れや情報の記録漏れが発生し、貴重な営業機会を逃してしまうケースも多くありました。

そこでB社は、Herokuを使って現場向けのモバイルアプリを開発。さらにHeroku Connectを活用し、モバイルアプリからSalesforceのデータにリアルタイムでアクセス・更新できる仕組みを構築しました。

その結果、営業スタッフは移動中や外出先でも、即座に顧客情報を確認・入力できるようになり、対応のスピードと正確さが大きく向上し、営業活動の質が飛躍的に改善しました。

Herokuの料金プラン

Herokuには、用途や規模に応じて選択できる複数の有料プランが用意されています。主なプランは以下の通りです。

プラン名価格リソース特徴
Eco プラン月額5ドル1,000時間テスト環境や小規模なアプリに適している
Basic プラン0.01ドル / 時間上限7ドル分の時間テスト環境や小規模なアプリに適している
Standard 1X/2X プラン0.03/0.06ドル / 時間512MB / 1GB RAM小規模から中規模のWebアプリケーションやAPIの運用に適している
Performance M/L プラン0.34/0.69ドル / 時間2.5GB / 14GB RAM低遅延や高可用性が求められるミッションクリティカルなアプリケーションにも適してる
Private S/M/L プラン要問合せ1GB / 2.5GB / 14GB RAM専用のリソースを使用することで高いセキュリティ環境を実現
Shield S/M/L プラン要問合せ1GB / 2.5GB / 14GB RAM医療情報の保護を求められるアプリケーションに対応している

Eco・Basicプラン

個人や小規模なプロジェクト向けには、EcoプランとBasicプランが提供されています。Ecoプランは月額5ドルで、最大1,000時間分のdyno(仮想コンテナ)を利用可能です。Basicプランは時間あたり0.01ドルで、月額の上限は7ドル。こちらはカスタムドメインの設定や無料SSL証明書にも対応しており、テスト環境や小規模なアプリに適しています。いずれのプランでも、DockerやGitを用いた柔軟なデプロイが可能です。

Standardプラン

ビジネス用途には、Standardプランが一般的に利用されます。Standardプランには「1X」と「2X」があり、Standard 1Xは時間あたり0.03ドル(上限25ドル/月)で512MBのRAMを提供し、Standard 2Xは時間あたり0.06ドル(上限50ドル/月)で1GBのRAMを利用できます。

どちらも無制限のプロセスタイプ、カスタムドメイン対応、ゼロダウンタイムでのデプロイが可能で、小規模から中規模のWebアプリケーションやAPIの運用に適しています。

Performanceプラン

アクセス集中や高負荷に耐えられるよう設計されたPerformanceプランも用意されています。Performanceプランには「M」と「L」があり、Performance Mは時間あたり0.34ドル(上限250ドル/月)で2.5GBのRAMを、Performance Lは時間あたり0.69ドル(上限500ドル/月)で14GBのRAMを提供します。

これらのプランではオートスケーリング機能が搭載されており、急激なトラフィックの増加にも対応可能です。また、Standard dynoとの併用もできるため、柔軟なリソース設計が可能です。低遅延や高可用性が求められるミッションクリティカルなアプリケーションにも適しています。

Privateプラン・Shieldプラン

セキュリティ面を重視する企業向けには、Privateプラン、Shieldプランが用意されています。Privateプランでは、専用のリソースを使用することで高いセキュリティ環境を実現し、より安心してアプリを運用できます。Shieldプランは、アメリカの医療業界基準であるHIPAA(医療保険の相互運用性と説明責任に関する法律)に準拠しており、医療情報の保護を求められるアプリケーションに対応しています。

これらのプランには「S」「M」「L」の3種類があり、それぞれ1GB、2.5GB、14GBのRAMが提供されます。なお、PrivateおよびShieldプランの料金については公式サイトには記載されておらず、Herokuの営業チームに直接問い合わせる必要があります。

データベースやアドオンなどの拡張機能を利用する場合は別途料金が発生します。利用状況に応じた従量課金制のサービスもあるため、コスト管理には注意が必要です。

Heroku無料プランはすでに廃止

かつてHerokuでは無料プランを提供していましたが、2022年11月28日をもって廃止されています。これにより、無料プランを利用していた開発者や企業は、代替サービスの検討を迫られることになりました。現在は有料プランの利用が必須となるため、コスト管理を考慮しながら運用する必要があります。

HerokuとAWSの違い

Herokuと比較されるサービスとしてIaaSであるAWS(Amazon Web Services)がよく挙げられます。PaaSとIaaSの違い、開発のしやすさ、価格、拡張性の観点から比較してみます。

PaaSとIaaSの違い

Herokuは、アプリケーション開発者が環境構築の手間をかけずに、スムーズに開発・デプロイできるよう設計されたPaaSです。インフラ管理を意識することなく、アプリケーションの構築に集中できる点が特長です。

一方、AWSはIaaSとして、仮想サーバーやストレージ、ネットワークなどのリソースを提供し、より柔軟な環境構築を可能にします。インフラの設定や管理の自由度が高い反面、運用の負担も増えるため、用途に応じた選択が求められます。

開発のしやすさ

Herokuは、シンプルなコマンドでデプロイ可能であり、特にスタートアップや小規模開発チームにとって大きな利点があります。例えば、Heroku CLIを使って以下のコマンドを実行するだけで、Gitリポジトリから直接デプロイが可能です。

一方、AWSで同じようにアプリをデプロイするには、EC2インスタンスを作成し、OSの設定やネットワークの構成、ロードバランサーの設定など、多くの工程が必要になります。そのため、柔軟なカスタマイズが可能な分、環境構築や管理の負担も大きいのがAWSの特徴です。

価格の違い

Herokuは従量課金制を採用しており、アプリの使用量に応じてコストが発生します。これに対し、AWSはサービスごとに細かい料金設定があり、コスト管理が難しくなる傾向があります。ただし、AWSには無料利用枠があり、EC2インスタンスなどを一定の条件下で無料で利用できます。

HerokuAWS
料金体系シンプルな従量課金制詳細なリソースごとの料金設定
初期コスト低い高い(設定次第)
無料プランなし(2022年廃止)無料利用枠あり

拡張性と自由度の違い

Herokuは、環境構築が簡単である反面、カスタマイズの自由度が制限されるというデメリットがあります。例えば、特殊なネットワーク構成や独自のデータベースエンジンを利用したい場合、Herokuでは対応が難しくなります。

一方、AWSは仮想マシンやコンテナ、データベース、機械学習など、多岐にわたるサービスを提供しており、インフラ全般を自由に構築可能です。そのため、大規模なシステムやエンタープライズ向けのプロジェクトではAWSが選ばれることが多いです。

どちらを選ぶべきか?

■Herokuが適しているケース

  • 環境構築の手間を省き、すぐにアプリ開発を始めたい
  • 少人数のチームやスタートアップで迅速な開発が求められる
  • Salesforceとの連携が必要(Heroku Connectの活用)

■AWSが適しているケース

  • インフラを細かくカスタマイズしたい
  • 大規模なシステムを構築・運用する必要がある
  • 既存のAWS環境と統合したい
項目HerokuAWS
サービスモデルPaaSIaaS
環境構築簡単(インフラ管理不要)手動で設定が必要
適用範囲小規模・中規模アプリ向け大規模・エンタープライズ向け
運用の手間低い高い(サーバー管理が必要)

Herokuのと比較されるPaaSサービス5選

Herokuと比較されるPaaSサービスを紹介します。

AWS Elastic Beanstalk

AWS Elastic BeanstalkはAWSが提供するPaaSサービスで、アプリケーションのデプロイを簡単に行うことができます。EC2やRDSといった他のAWSサービスとシームレスに連携できる点が大きな魅力です。

また、環境のカスタマイズ性にも優れており、すでにAWSを利用している場合や、インフラ全体をAWSで統合したい企業にとっておすすめの選択肢です。

Google Cloud App Engine

Google Cloud App EngineはGoogle Cloudが提供するPaaSです。自動スケーリング機能が充実しており、アクセスの増減に応じて柔軟に対応できます。対応言語も豊富で、Python、Node.js、Java、Goなどに対応しています。

Google Cloudの環境を活用したい場合や、高トラフィックに対応できるアプリケーションを運用したい場合に適しています。

Railway

RailwayはHerokuに非常に似たシンプルなデプロイプロセスが特徴で、サーバーレスに近い感覚で使えるため、スタートアップ企業を中心に人気を集めています。

Herokuの使いやすさを維持したまま代替サービスを探している人や、素早く簡単に開発環境を整えたい開発者に向いています。

Render

Renderは自動SSLの設定やDDoS保護といったセキュリティ機能が充実しており、フルマネージドなインフラを提供するPaaSです。スケーリングも容易で、安価かつ安定したサービスを求めている人や、シンプルなデプロイプロセスを重視する開発者に適しています。

Fly.io

Fly.ioはグローバルにアプリをデプロイできるのが大きな特徴で、Dockerを活用したコンテナベースのPaaSとなっています。世界中のデータセンターに分散してアプリケーションを配置したい場合や、コンテナベースのアプリを手軽に運用したい場合に最適です。

サービス名特徴適用ケース
AWS Elastic BeanstalkAWSのPaaSでEC2やRDSと連携可能既存のAWS環境を活用したい場合
Google Cloud App Engine自動スケーリング機能が強力高トラフィックのアプリ向け
RailwayHerokuに似たシンプルなデプロイスタートアップ向け
Renderフルマネージドでコストが安い低コストで運用したい場合
Fly.ioグローバルなデプロイが容易世界中のデータセンターで運用したい場合

Herokuの使い方(実際のデプロイ手順)

Herokuアカウントの作成

1.公式サイトにアクセスし、右上の新規登録をクリックします。

Herokuの使い方

2.遷移後の画面でフォームに必要な情報を入力し、アカウント作成をクリックします。

Herokuの使い方
Herokuの使い方

3.フォーム送信後、登録したメールアドレス宛にHerokuからメールが届くので、メールの中のリンクをクリックします。

Herokuの使い方

4.クリックするとアカウントにログインするためのパスワードの設定が求められます。パスワードを入力し、「パスワードを設定しログインする」をクリックします。

Herokuの使い方

5.最後に登録完了画面が表示されるので「ここをクリックして次に進んでください」を押してアカウント作成を完了します。

Heroku CLIのインストール

1.Heroku CLIをインストールすることで、Winowsのコマンドプロンプト、Macのターミナルといったローカル環境からHerokuを操作できます。公式サイトHeroku dev centerにアクセスします。

2.インストーラーはMac、Windowsそれぞれ用意されています。ご自身の環境に合ったものをインストールしてください。

Herokuの使い方

3.インストールが完了したら実際にローカル環境からHerokuにログインします。Winowsならコマンドプロンプト、Macならターミナルを開き、以下を入力しエンターを押します。今回はWinowsのコマンドプロンプトでの操作方法を紹介します。

heroku login
Herokuの使い方

4.以下のように表示されますが再度「q以外のキー」を押します。この際に「q」を押すとログアウトしてしまうので注意してください。

Herokuの使い方

5.Herokuのログイン画面が表示されます。先ほど設定したメールアドレス、パスワードを入力してログインしてください。ログインの際に多要素認証を求められる場合は表示に従って用途に合った方法で認証を行ってください。

Herokuの使い方

6.ログインが完了するとコマンドプロンプトの画面にログイン情報が表示されます。これでHerokuを利用する準備が整いました。

Herokuの使い方

アプリの作成・デプロイ

Heroku CLIのインストールが完了したらHerokuが提供するサンプルアプリを使ってデプロイを試してみましょう。今回はPHPのサンプルアプリをデプロイする手順を紹介します。

参考:Heroku スターターガイド (PHP)

1,Heroku CLIにログインします。

heroku login


このコマンドを実行するとブラウザが開きHerokuのログイン画面が表示されるので、アカウント情報を入力してログインします。

2.サンプルアプリを取得 Herokuが提供するサンプルアプリをGitHubからクローンします。


git clone https://github.com/heroku/node-js-getting-started.git
cd node-js-getting-started

3.Herokuアプリの作成 Heroku上に新しいアプリを作成します。

heroku create


コマンドを実行すると、Herokuによって一意のアプリ名が自動生成され、リモートリポジトリが設定されます。

4.アプリのデプロイ Gitを使用してアプリをHerokuにデプロイします。

git push heroku main


デプロイが完了すると、HerokuのURLが表示されます。

5.アプリの動作確認 Herokuにデプロイしたアプリケーションをブラウザで開きます。

heroku open


画面に「It works!」と表示されれば、デプロイ成功です。

まとめ

Herokuは、手軽にアプリをデプロイできるPaaSとして、多くの開発者に支持されています。しかし、無料プラン廃止やカスタマイズ性の制限があるため、用途に応じて代替サービスの検討も重要です。

  • スタートアップ向けにはHerokuが最適
  • エンタープライズ向け・大規模開発にはAWSや他のPaaSが適している

開発目的やコストを考慮し、最適なプラットフォームを選びましょう。

Strh株式会社では、Herokuを活用した開発やSalesforceとのシームレスな連携を実現するための開発支援も行っています。 Herokuを活用したSalesorceとの連携開発に関してご不明な点やご相談がございましたら、ぜひお気軽にお問い合わせください。 

また、StrhのSalesforce揮発・システム連携サービスについて、さらに詳しく知りたい方は、こちらのページで紹介しています。

Salesforce開発・システム連携支援

Salesforce、Sales Cloud、及びその他はSalesforce, Inc.の商標であり、許可のもとで使用しています

Salesforceの導入や活用のお困りごとはプロにご相談ください

  • Herokuの料金体系やプランの違いを踏まえて、自社に合った構成を検討したい
  • Heroku Connectを使ってSalesforceとリアルタイム連携したアプリケーションを構築したい
  • Herokuの無料プラン廃止に伴い、適切な代替サービスを選定・移行したい
このようなお困りごとがありましたら、ぜひとも私たちStrhにご相談ください。Salesforceや営業・マーケティングに精通したコンサルタントが、御社に最適なソリューションをご提案させていただきます。まずはお気軽にお問合せください。 Salesforce活用についてまずは相談する

執筆者 取締役 / CTO 内山文裕

青山学院大学卒業後、株式会社ユニバーサルコムピューターシステムに入社。
大手商社のB2B向けECサイトの構築にて会員登録、見積・注文機能、帳票出力などECにおける主要機能のフロント画面・バックエンドの開発に従事。 その後アクセンチュア株式会社に入社。デジタルコンサルタントとしてWebフロントエンド・モバイルアプリの開発やアーキ構築を主に、アパレル・メディア・小売など業界横断的にシステム開発を支援。また、ビッグデータを活用したマーケティング施策の策定やMAツールの導入・運用支援にも従事。
2022年2月にStrh株式会社の取締役CTOに就任。デジタルプロダクト開発の支援やMAツール導入・運用支援を行っている。

▼保有資格
Salesforce認定アドミニストレーター
Salesforce認定Java Scriptデベロッパー
Salesforce 認定Data Cloudコンサルタント

この記事をシェアする

x facebook
To Top