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 マーケティング新着記事

news144.jpg

「BOTANIST」を生んだI-neが上場 強いブランドの秘密とは?
「BOTANIST」運営のI-neが東京証券取引所マザーズに上場。テクノロジーとマーケティング...

news052.jpg

Disney飛躍の立役者ボブ・アイガー氏が語る 「積み上げてきた価値を『崇拝』せず『尊重』せよ」
The Walt Disney Companyを巨大メディア企業に成長させた前CEOのボブ・アイガー氏が、レ...

news048.jpg

組織内のデータの半分以上が「ダークデータ」 回答者の66%――Splunk調査
「ダークデータ」とは活用できていない 、もしくは把握すらできていないデータのこと。