2019年02月15日 09時00分 公開
特集/連載

「サーバレスアプリケーション」のデプロイを高速化する5つのポイントサーバレス関数のパフォーマンス向上が鍵

サーバレスアプリケーションのデプロイを迅速化するには、その構成要素であるサーバレス関数のパフォーマンスを向上させる必要がある。具体的に何をすべきなのか。本稿では主要な5つのポイントを紹介する。

[Chris Tozzi,TechTarget]

関連キーワード

Microsoft Azure | Amazon Web Services | Google


画像

 「AWS Lambda」「Azure Functions」「Google Cloud Functions」などのイベント駆動型コード実行サービスは、サーバの存在を意識せずにアプリケーションを開発・運用できる「サーバレスアーキテクチャ」を具現化する代表的な手段だ。イベント駆動型コード実行サービスを適切に利用すれば、サーバレスアーキテクチャに基づくアプリケーション(以下、サーバレスアプリケーション)を効率的かつ迅速にデプロイ(配備)できる。

 サーバレスアプリケーションのデプロイ速度を最大限に高めるには、その構成要素となる関数(以下、サーバレス関数)のパフォーマンスを改善する必要がある。確実な改善には、以下の5つの戦略を実行するとよい。

  1. 依存関係の最小化
  2. セッション間の環境データの維持
  3. メモリ割り当ての増加
  4. 関数コードの簡潔化
  5. ベンダーの比較検討

 それぞれのポイントについて、詳しく見ていこう。

1.依存関係の最小化

 企業では全てのアプリケーションのパフォーマンスを向上させるために、不要な「依存関係」を排除する必要がある。依存関係とは、汎用(はんよう)的なプログラムをまとめたライブラリをはじめとする他のコンポーネントがないと、関数のビルド(コードからソフトウェアを生成するプロセス)や実行ができない状況を指す。不要な依存関係は、アプリケーションのデプロイを大幅に遅延させる可能性がある。サーバレス関数のパフォーマンスを向上させるためには、サーバレス関数に潜むこうした依存関係を排除する必要がある。

 実行に必要なモジュールのみを含むように、各サーバレス関数を記述することが重要だ。Pythonをはじめ高度にモジュール化された言語を使用すると、この目標の達成が容易になる。

2.セッション間の環境データの維持

ITmedia マーケティング新着記事

news101.jpg

「日本企業的DX」の神髄(無料eBook)
「ITmedia マーケティング」では、気になるマーケティングトレンドをeBookにまとめて不定...

news024.jpg

CEOと従業員の給与差「299倍」をどう考える?
今回は、米国の労働事情における想像を超える格差について取り上げます。

news153.jpg

日立ソリューションズが仮想イベントプラットフォームを提供開始
セミナーやショールームなどを仮想空間上に構築。