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

SSH鍵認証に関して

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

no image

yumのリポジトリについて

CentOSでは様々なパッケージが用意されていますが、標準で使えるもの以外にもさまざまなリポジトリがあります。 Contents1 リポジトリ一覧2 有効、無効や指定してのインストールについて リポジ …

no image

composerでのライブラリ登録

今回はPHPのパッケージ管理ツールであるcomposerへのライブラリ登録を。 Contents1 ライブラリの作成2 packagistへの登録3 呼び出す側3.1 composer.json3.2 …

no image

nginx上でのcakePHP

cakePHP上をCentOS,nginx上で公開するときのメモなどを。 cakeのversionは2.5です。 /var/www/html/sampleapp直下にプログラムを配置するものとします。 …

no image

セッションとクッキーについて

セッションとクッキーについての違いを整理しておこうと思います。 Contents1 そもそものHTTPプロトコルについて2 ステートフルな状態を実現するために2.1 方法1 クライアント側で情報を保持 …

アーカイブ