ざっくり分かる! Herokuの概要とメリットを紹介

パソコンとマウス IT関連

スマホアプリの開発をしていく中で、自作のAPIサーバを作成したいと思いました。

しかし、実際に環境構築していくのは面倒ということで、「Heroku」というサービスについて調べてみました!

Herokuとは

アプリケーションを実行するための環境を提供しているPaaS(Platform as a Service)のこと。

ジョージ・眉間シワ男
ジョージ・眉間シワ男

一般的に、アプリケーションを実行するために必要なものがいくつかあります。

データを登録するデータベース、画面の操作を受け取って処理するサーバなどがあります。

最近ではAWSなどでクラウドで提供されているサーバが普及しています。

しかし、環境構築の学習コストなどを考えると手間や時間がかかります。

それを解決することができます。

PaaSとは

PaaS(Platform as a Service)とは、サーバやアプリを実行する環境を提供するサービスのことです。

開発環境を提供しているので、アプリケーション開発に注力できるのが大きな利点です。

詳細は下記のページをご覧ください。

クラウドについて細かく解説しています!

【AWS入門】 クラウドとAWSについて知ろう!
クラウドとAWSの概要について分かりやすく解説しています!

Herokuのメリット2つ

主に2つあります。
他にもありますが、ざっくり理解するということで今回は2つ挙げます。

  • 拡張機能(プラグイン)が豊富
  • スケールアウトが簡単

拡張機能(プラグイン)が豊富

アプリケーション開発をしていく中で、追加機能が欲しい時があります。

上司
上司

あ〜、メール認証の機能盛り込みたいな。
でもメールサーバの構築面倒だな……。

こんな時でも、Herokuが提供する拡張機能を利用するだけで環境構築ができます。

スケールアウトが簡単

アプリケーションを公開し、利用者が増えてくるとサーバの性能を上げなければなりません。

とある会社員
とある会社員

その理由はアクセス量向上に伴い、サーバ負荷が増幅するためです。

オンプレミスなどでサーバ構築した場合は、システムの処理能力を高める「スケールアウト」は手間と時間がかかります。

しかし、Herokuではコマンドやダッシュボード上で簡単にスケールアウトできます。

Herokuのデメリット2つ

主に2つあります。

  • 東京リージョンがない
  • カスタマイズができない

東京リージョンがない

リージョンというのは、実体のサーバが置かれている設備のことです。

東京のリージョンがなく、海外のリージョンしか対応していないということは、物理的に通信時間が増えます

通信時間が増えるということは、画面に表示されるまでの時間が増えるので、ユーザの離脱原因にもなります。

カスタマイズができない

PaaSゆえのデメリットですが、使用されるストレージやCPUなどが選択できない点です。

メリットの表裏一体といったところですが、細かい設定など面倒だからしたくないという人は、むしろこれはデメリットにならないと思います。

現在サポートしている言語は以下の通りで、ほぼ網羅できていると思います。

  • Ruby
  • Python
  • Java
  • PHP
  • Go
  • Node.js
  • Scala
  • Clojure

まとめ

長所短所をまとめてみましたが、個人的にはメリットとなる部分の方が大きいと感じました。

簡単に環境構築できるのは、アプリケーション開発に注力できるので良いですね。

サービス開発でアプリケーション開発にリソースを割きたい場合は、Herokuの検討もしてみてはいかがでしょうか?

タイトルとURLをコピーしました