LoginSignup
214
210

More than 1 year has passed since last update.

Herokuってなんなの?

Last updated at Posted at 2019-02-21

使ったことはあるものの、よく知らなかったので調べてみました

キャプチャ.PNG

Herokuとは?

開発したWEBアプリケーションを10分程度で全世界に公開することができ、そのままサービスを本格的に運用することも可能なホスティングサービス
  • Python/Java/Go/PHP/Node.JS/Ruby on Railsに対応可能
  • salesforceが買収したサービス

ホスティングサービスとは?

fukidasi.png

レンタルサーバ、共有サーバのこと
その中でSaaS、PaaS、IaaS、DaaSと呼ばれるものがあり、違いはどこまでクラウドとして用意してくれているか

SaaS→PaaS→IaaSの順でシンプル⇄自由度が高い

SaaS

Software as a Serviceの略
利用者はインターネット上で利用するだけでいい

メリット:サービスが整っているので手間なく使える

無料ブログサービスなどがこれに当たる

PaaS

Platform as a Serviceの略

Herokuはこの中のひとつ

・ネットワークなどのインフラ
・OSなどのプラットフォーム

2つがすでに整った状態で利用できるのでアプリケーションの構築に集中できる

メリット:Ruby on Rails、Django、Spring、Node.jsなどで制約なくアプリを作成ができる

コンシューマ向けの凝ったアプリを作るのに向いている

IaaS

Infrastructure as a Serviceの略

AWSのEC2はこの中のひとつ

仮想サーバ、ハードディスク、ファイアーウォールを用意
サーバのスペックやOS等を選択することが出来る

メリット:自由に開発できる

Xサーバーなどのレンタルサーバー
無料CMSのWordPressを利用するために使われることもある

VPSとの違い

IaaS:料金は使った分だけ 多機能で色々凝りたいならこっち
VPS:料金は一定 機能がシンプルなので扱いやすい

DaaS

Desktop as a Serviceの略
クラウド上にデスクトップ環境を作って利用する

メリット:デスクトップ環境が低コストで簡単に利用できる
デメリット:アプリとの互換性がなかったり、大容量データの転送が遅い

#数あるPaaSの中のHerokuの特徴

デプロイが簡単

  • gitのリモートリポジトリに追加してgit pushするだけでデプロイできる

アドオン追加

  • 現在約150種あるアドオン(いろんな会社から提供されているHerokuで使える追加機能)をコマンドで簡単に追加出来る

アドオンの代表的なもの
  • DBのPostgres
  • メール配信サービスのSendGridなど

利用時の注意

 一番安い$5のプランならdyno 1,000時間/月利用可能

  • 必要な RAM は 1 dyno あたり 512 MB

512MBを超えるとスワップが発生しR14エラーに

スワップとは・・
ハードディスクなど補助記憶装置を利用して使用可能なメモリ容量を増やすOSの機能のこと

一時的に立ち上がっているDynoの利用時間も換算される

Dynoがクラッシュしてもアプリに影響が出ないようにしている
→Dynoに直接コマンドを実行しても直接アクセスせずに、一時的に別のDynoを立ち上げてそこにアクセスしているので
そのサーバ利用時間もカウントされている

30分アクセスがないとスリープしてしまう

次にアクセスがあったときに Dyno を起動するのでレスポンスが遅くなる(アプリケーションの内容によっては30秒待たさせることも)

UptimeRobot(無料のネットワーク監視サービス)を使い5分ごとにアクセスすることでスリープを回避出来る

https://uptimerobot.com/
↑全てのプランが有料化されたかわりに解消

214
210
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
214
210