[Azure]Azure Functionのセミナーに参加しました

Azure Antennaさん主催の、「Azure Functions と キューで構築するNoOpsスケーラブルバッチ処理基盤」セミナーに参加しました。

※本イベントでは、ご参加者自身のブログにて、Azure Antenna で受講いただいた体験をご紹介いただける方に、優先的に参加いただけるよう、抽選前に指名 させていただきます。対象者多数の場合は、申込み先着順に指名させていただきます。 ※このハンズオンは2018年1月にゼンアーキテクツ三宅氏によって実施されたスペシ...
もともと、Azure Functionsの内容が知りたいと思って参加したのですが、その他にもStorageのキューやBLOB、Cosmos DBなど、Azureのサービスを組み合わせた内容となっており、非常に有意義でした。
構成的には、Azure Storageのメッセージングキューに対してCSVからデータを流し込み、キューからAzure Functionsを叩き、Cosmos DBに格納する、というものです。
まずはPortalからAzure Functionsを設定します。Functionsの種類としては「従量制」と「App Service」に大別できます。従量制はAWSのLambdaのように、リクエストをきっかけとして、最大10分のタスクを動作させることができます。App Serviceは、永続的にFunctionをWebアプリとして配置します。このとき、App Service PlanはStandard以上を選択する必要があるため、、無料のF1プランでは動かすことはできません。また、App Serviceですので、サイトを落としている間でも課金が発生するため、検証の際は要注意です。
Azure Functionsは様々な言語で作成することができますが、Visual Studioを使うとC#のプロジェクトを作成することができます。


そしてStorageのキューを作成します。

Azure Premium Storage の利用をすぐに開始して、I/O 集約型のアプリケーションに適した、遅延が少なく高スループットのストレージを利用できます。
1つのキューに1つのデータを入れることにより、Azure Functionsをバッチ的に動作させることができるようになります。
また、Storageにテストデータを入れたりする時には、Azure Storage Explore(アプリ)をインストールして使用すると便利です。
Azure Storage Explorer で、お使いの Azure Storage アカウントやサブスクリプションの管理を簡単に行いましょう。アプリケーションのログ結果にバックエンドでアクセスして、ストレージを視覚化します。
そして、Fuctionsから使用するCosmos DBを設定します。Cosmos DBについては、先週詳しく聞いたので、その知識が役に立ちました。
Azure Antennaさん主催のハンズオン「Cosmos DB と App Service によるグローバル分散アプリ構築」に参加してき...
これで全体の構成はできたので、CSVからStorageキューにデータを流すC#プログラムを流して動作確認しました。
そして、Functionsの実行状況やパフォーマンスをApplication Insightsを使って監視できるようにします。
Azure Monitor では、アプリケーション、インフラストラクチャ、およびネットワーク パフォーマンスの監視と分析をすべて 1 つの場所で行えるので、問題をすばやく特定して修正することができます。
これにより、Azure Monitorでパフォーマンスの数値を監視できるようになりました。
Azureのサービスを効果的に組み合わせてシステム構築ができることが理解できました。
今回の情報を元に、WebAPIとしてAzure Functionsを起動し、Cosmos DBのデータを読み書きするアプリを作成したいと思います。

スポンサーリンク

シェアする

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

フォローする

スポンサーリンク