skillup

技術ブログ

サーバー・ネットワーク

サーバーレスやPassについての所感など

投稿日:2020年6月17日 更新日:

firebaseについてここ数日ちょこちょこ触りました。一昔前はwebアプリというと、ほとんどがCentOSにapacheとMySQLを入れて・・・というパターンが大部分でしたが、2020年6月現在、こういったサーバーレスのアプリがかなり出ていますね。

自分が実務で触ったのはAWS関連、firebaseで、herokuなども少し触りましたので、そういったPassも含め、旧来型のサービス(CentOS借りてその上に入れる・・・)との比較を、メモしておこうと思います。

メリット

サーバーの構築、運用が不要

単純に考えて構築したり、監視の手間がないのは楽だと思います。

監視状況などはだいたい管理画面から参照できることが多く、新たに負荷監視ツールなどを入れる手間はかかりません。

セキュリティ

自前でサーバー借りて立てようとすると不正アクセスをされたりする確率が結構あります。

sshがないことが多いですし、不正にログインすること自体が難しいため、そういったセキュリティ面の心配をする必要がありません。

基本機能はほぼ搭載

あまり使いませんでしたが、herokuだとDBの自動ダンプとかロールバックなどの基本機能はほぼほぼ揃ってます。

耐久性

一般のサーバー内のサービスと比較して、サーバーが止まるということがほぼないため(少なくとも自分でアプリを立てる時よりはですが)、この点安心感があります。

スケールアウトが比較的容易

サーバーのスペックをあげたりするのが比較的楽なことが多かったり、アクセスによる従量課金性だったりして使用料に応じてサーバーを起動させるなどが比較的容易です。

デメリット

仕様の制限がいろいろとある

当たり前ですがプラットフォームの仕様の制限を受けます。例えばプログラミング言語の場合、そのそも使えるものが限られることがあるので、レガシーだったりマイナーな言語だとそもそも使えません。

またバージョンアップなどがあり、古いバージョンのものを使っていると使用不能になるケースなどもありえます。

リプレイスなどが困難

既存のWebアプリであればgitでソースを管理して、DBをダンプして・・・ということが可能ですが、これらのサービスの場合、あるプラットフォームに依存した作りになっているので、別のサービスにすんなりとリプレイスしたり移行したりすることが難しいです。

デバッグが困難

ログを一般のwebアプリのように任意に仕込んだりするなどができないため、障害発生時に本番の完全な原因追求が難しかったりします。

用途

個人的には比較的小規模なサービスや大規模サービスのアプリの一部分を担わせる(あるいは大規模サービス自体を色々と分割してこれらのサービスを使う)といいのではと思っております。

参考リンク

サーバーレスの理解とメリット・デメリット(2020年版)

【まとめ】サーバレスがここ数カ月で一気に遂げた進化とは

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

herokuへのdockerコンテナ送付とdocker volumeについて

Contents1 herokuへのdockerコンテナ送付2 ファイル構成2.1 コマンド2.2 注意点3 docker volumeの記述 herokuへのdockerコンテナ送付 Herokuで …

no image

herokuでのhttpd.conf設定

前回の記事でLet’s EncryptでSSL設定する場合、 http://ドメイン/.well-known/ というURLにアクセスする必要があります。 ただherok …

no image

SSH鍵認証に関して

SSHの鍵認証についてやり方自体は流れ作業でできていましたが、根本的なところが理解していないので復習。 まずは通常の流れを。 1 クライアント(自分のPC)で公開鍵・秘密鍵を作成。[crayon-5f …

no image

zabbixオリジナルアイテム&トリガー

zabbixは標準でもかなりのアイテム&トリガーが入っていますが、オリジナルなものを入れたいときも当然あるかと思います。 そんなときにオリジナルのアイテム&トリガーを入れることができます。 実務ではg …

no image

supervisorによるデーモン化

えー実務で任意のプログラムをデーモン化させて処理をするという実装があったのでメモ。 Contents1 デーモンとは?2 Supervisor2.1 インストール2.2 実行プログラム2.3 サービス …