サーバレスアーキテクチャは開発チームに大きなメリットをもたらす一方で、採用の際には検討すべき要素が幾つかある。主要な3つの検討要素を紹介しよう。
従来のアプリケーションと比べて、「サーバレスアーキテクチャ」に基づくアプリケーション(以下、サーバレスアプリケーション)のメリットは多岐にわたる。特に物理サーバと仮想サーバのプロビジョニングやメンテナンスから開発者を解放できる点が大きい。サーバレスアーキテクチャは、アプリケーションサーバの存在を意識せずに開発可能なアプリケーションのアーキテクチャだ。
サーバレスアプリケーションでは、OSの更新など一般的なスケーリング作業やメンテナンス作業全てにクラウドベンダーが対処する。従来のアーキテクチャに基づくアプリケーションでは、開発者側がこうした作業をする必要があった。開発者はインスタンス(仮想マシン)の種類やリソースのスケーリング、アイドル状態のコンピューティングコストなどを気にする必要もなくなる。自身のアプリケーションの独自性や、その機能を高める特徴の開発に専念できる。
開発チームはサーバレスアーキテクチャを導入する前に、重要な決断を下さなければならない。チームスタッフの編成や開発フレームワーク(特定の設計手法に基づく機能群をまとめたソフトウェア)の選択、テスト方法などがその例だ。本稿はサーバレスアーキテクチャのチュートリアルとして、事前に検討すべき3つの重要な要素を取り上げる。
「サーバレスアーキテクチャを導入する際は開発者が中心的な役割を果たす」ことを最初に理解しておく必要がある。サーバレスアプリケーションのプロトタイプ開発では、コードをあまり使わない方法もある。ただしサーバレスアプリケーションの主役は、必要なカスタムロジックを構築する開発者だ。特にオープンソースの「Serverless Framework」、Amazon Web Services(AWS)の「AWS Serverless Application Model」(SAM)、「AWS Chalice」などのフレームワークを理解しているチームリーダーが必要だ。
チームには、アプリケーションの特定要素ごとに開発者が必要になる。API(アプリケーションプログラミングインタフェース)のコンポーネントとフロントエンドのコンポーネントがあるとしよう。この場合、個別の開発者チームを2つ作り、各チームが2つのコンポーネントのいずれかを担当する。従来のアプリケーションと同じように、個別の開発チームを全て連携させることがチームリーダーの役割になる。
ネスプレッソ幹部に聞く「マーケティングとサステナビリティーは両立可能か?」
Marketing DiveはNespresso USAでマーケティング担当バイスプレジデント兼サステナビリテ...
生成AI活用の成否を決める「プロンプトエンジニアリング」 知っておくべきポイントとは?
マーケティング領域で進む「AIシフト」に取り残されないため、どうすればいいのか。今回...
マーケティングを「リアルタイム」に進化させるために何から始めればいい?
2024年9月に米ラスベガスで開催されたBrazeの年次イベント「Forge 2024」の会場で、同社...