サムライアプスのウェブサイトは、 Amazon S3 を使ってサーバーレスで構築されています。本シリーズでは、サーバーレスウェブサイトの構築方法を、実際に稼働している本サイトの場合を例にして紹介していきます。
サーバーレスという用語をいきなり使っていますが、どのような意味なのでしょうか。インターネット上で何かサービスをするにあたってサーバーがないということはあり得ないわけで、奇妙な用語です。
サムライアプスも利用しているクラウドプロバイダである Amazon Web Services (AWS) の よくある質問には下記のように書かれています。
Q: What makes a service or application serverless?
We founded the concept of serverless on the following tenets: no server management, pay-for-value services, continuous scaling, and built-in fault tolerance. When adopting a serverless service or building a serverless architecture, these ideals are fundamental to serverless strategy.
(DeepL を用いた翻訳)
Q:サービスやアプリケーションをサーバーレスにする理由は何ですか?私たちは、サーバー管理不要、従量制サービス、継続的なスケーリング、 組み込みのフォールトトレランスという信条をもとにサーバーレスの概念を確立しました。 サーバーレスサービスを採用したり、サーバーレスアーキテクチャを構築する場合、 これらの理想がサーバーレス戦略の基本になります。
キモは、障害対応や機材増強も含めたサーバーという物理的なマシンの管理一切をAWSに任せ、私たちユーザーは使った分だけ料金を支払う従量制で利用する、という点です。
中小企業が、自社で構築・運営するために利用するという観点では、下記のメリットが重要です。
デメリットとしては、次が考えられます。
サーバーレスに限らず、ウェブサイトを作るには次の2つが必要です。
現在のウェブ技術は、様々な要求にこたえるために、非常に多様化しています。 大きくは、静的サイトと、動的サイトに分けられます。
動的サイトを作成するには、データベースとコンテンツの生成処理を行う必要がある分、コストがかかります。
サムライアプスのサイトは、運用とコスト負担を最小にすることを重要視して静的サイトとして作られています。
(しかし、実は動的サイトのようなことも実現可能です。これはまたの機会に)
前述のとおり、サムライアプスでは Amazon Web Services (AWS) を利用していますが、具体的には下記のサービスを組み合わせています。
https://
で始まるサイト(暗号化されて安全な通信が行える)にするために必要です。以上の構成は、コストは極めて低く抑えながら、十分な性能を発揮することができ、サーバーレスでウェブサイトを作る場合の定石となっています。
次回以降は、実際に使っているソースコードを使いながら、さらに詳しい紹介をしていきたいと思います。
お楽しみに。
これにてご免!
写真:Christina @ wocintechchat.com on Unsplash