Azure Functionsのすぐ使える3つの構成パターン

シェアする

  • このエントリーをはてなブックマークに追加

Azure Functionsは、2016年11月に一般提供されるようになったイベント駆動型コード実行サービスです。トリガーとして、RESTやWebhookが使えるのに加え、制約や特性の異なる2つのプランを提供されており、汎用性が高くなっています。

実行するコードとしては、Node.js、Python、PHP、C#、PowerShellなどが利用できます。Functionsにおいてコードを読み込んだ仮想マシンをFunctions Appと呼びます。ユーザは仮想マシンを意識する必要がなく、メモリー容量はコードに合わせて自動で割り当てられます。またCPU使用率などの条件に応じて、自動でFunctions Appがスケールアウト/スケールインします。

!ポイント  AWS Lambdaの特徴

特徴 概要
さまざまな言語 C#、F#、Node.js、Python、PHP、Batch、Bash、その他実行可能な言語を使って関数を記述できます。
従量課金制の価格モデル コードの実行に要した時間に対してのみ課金されます。
セキュリティの統合 Azure Active Directory、Facebook、Google、Twitter、Microsoft アカウントなどの OAuth プロバイダーにより、HTTP によってトリガーされる関数を保護できます。

Azure Functionsのすぐ使える3つの構成パターン

パターン1:DBへのログ投入

アプリケーションサーバなどのログをリレーショナルデータベースを投入するのに、QueueStorageからFunction Appがメッセージが入ったことを受け取り、それをトリガーにQueueStorageからログを取得し、リレーショナルデータベースにログを投入する役割をFunction Appが行います。


パターン2:定時バッチ処理

バッチ処理コードをFunctions用に改修することで、実行時間のみに課金されるので、仮想マシンを使うよりコストが抑えられるケースが多いと考えられます。


パターン3:異常時のチェック

Zabbixからネットワーク異常通知をFunctionsが受け取り、これをトリガーとして、画面遷移テストを実行し、それが終わると運用担当者にSlackで結果を通知します。

ひと言コメント

アプリケーションすべてをFunctionsへ移行するのではなく、効果が高いと思われる、一部機能のみFunctionsに移行することで、コストや運用負荷を低下させることも可能となります。

スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする