読者です 読者をやめる 読者になる 読者になる

プログラマになりたい

おっさんになっても、プログラマでありつづけたい

サーバレスアーキテクチャとは?

 サーバレスアーキテクチャの整理です。少し前は、2-Tier Architecture(クラウドネイティブなアーキテクチャ)と3-Tier Architecture(従来のアーキテクチャ)という対比で論じられることが多かったです。しかし、API Gatewayの登場により、3-Tierな構造でもクラウドネイティブなアーキテクチャにしやすくなりました。ということで、サーバレスアーキテクチャ(ServerLess Architecture)と呼ばれることが多いです。

サーバレスアーキテクチャのパターン



 それでは、従来型のアーキテクチャ(旧3-Tier)と2-Tierパターン、API Gatewayを利用したサーバレスアーキテクチャをそれぞれ見てみましょう。

 まずは従来型のアーキテクチャです。間にELBを挟んでAutoScaleにすることは多いですが、リクエストをEC2が受けてRDSやS3などをバックエンドに使うことパターンです。この構成のメリットは、既存のオンプレミスのサービスを簡単に移行できることです。実際に、このパターンでの利用が一番多いと思います。いわゆるアプリケーションサーバパターンです。

f:id:dkfj:20151019080105p:plain

 次に、Cognito等を利用してモバイルやJavaScriptのクライアントから直接AWSのリソースを利用する2-Tierアーキテクチャのパターンです。2014年にCognito,Lambdaが出てからの流行しました。この構成は、リソースの利用効率が極めて高く、かつコストも最小で更に負荷に対してほぼ自動に拡張できる構成にし易いことです。
f:id:dkfj:20151019080117p:plain

 最後にAPI Gatewayを使ったパターンです。従来の3-Tierの構成に似ているものの、サーバレスを実現しています。この構成のメリットは、APIを経由してサーバサイドにアクセスするため、クライアント側にSDKを組み込む必要もなくロジックを最小限にできることです。その為、クライアント側のマルチプラットフォーム化がし易いです。
f:id:dkfj:20151019080147p:plain

まとめ



 サーバレスアーキテクチャのうち、2-TierパターンはAWS自身がMobile Hubというフレームワーク(サービス)を出しています。API Gatewayは、JAWSやFluctというオープンソースのフレームワークが出てきています。どの形が主流になるか解りませんが、AWSのサービスのありようがアーキテクチャの考え方に影響する時代になっているというのは間違いありません。

Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

  • 作者: NRIネットコム株式会社,佐々木拓郎,林晋一郎,小西秀和,佐藤瞬
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2015/03/25
  • メディア: Kindle版
  • この商品を含むブログを見る

See Also:
仮想サーバ、コンテナサービス、ファンクション
クラウドファーストとクラウドネイティブ
AWS Mobile HubとAmazon API Gatewayからモバイル開発の今後を考える
JAWSUG千葉で、API Gatewayの話をしてきました。