Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Functionsのローカル開発を簡単にするためのツールとテクニック/sisco-...
Search
TaijuYamashita
October 23, 2023
320
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Azure Functionsのローカル開発を簡単にするためのツールとテクニック/sisco-cloudLTvol5-AzureFunctions
TaijuYamashita
October 23, 2023
More Decks by TaijuYamashita
See All by TaijuYamashita
20240627LT大会vol9_AzureFunctionsのFlexConsumptionについて語る.pdf\saison-technology-cloudLTvol9-AzureFunctionsFlexConsumption
taijuyamashita
0
120
Azureの認証サービスについてまとめてみた\saison-technology-cloudLTvol8-AzureCertificationService
taijuyamashita
0
140
Oracle Database@Azure について調べて考察してみた/sisco-cloudLTvol6-OracleDatabase@Azure
taijuyamashita
0
700
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
2
1.8k
Context Engineering - Making Every Token Count
addyosmani
9
1k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
GraphQLとの向き合い方2022年版
quramy
50
15k
How STYLIGHT went responsive
nonsquared
100
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
190
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
290
RailsConf 2023
tenderlove
30
1.5k
Transcript
Azure Functionsのローカル開発を 簡単にするためのツールとテクニック 山下 大樹
アジェンダ • 自己紹介 • 見どころ • Azure Functionsについて • 実際に作ってみる
• まとめ 2
自己紹介 • 山下 大樹(やました たいじゅ) • 経歴 2022年3月 経営学部卒 2022年4月~
セゾン情報システムズ新卒入社、 小売業のお客様向けのシステムを開発 • 資格 基本情報技術者 AZ-900、DP-900 、DP-300 、AI-900 3
見どころ ✓Azure Functionsの特徴 ✓Azure Functionsローカル開発時のポイント 4
Azure Functionsについて • Azure Functionsとは? Azure Functions は、任意のプログラミング言語を使用してより効率的に開発する のに役立つ、イベント ドリブン型サーバーレス
コンピューティング プラットフォームです。 (中略) 複雑なオーケストレーションの課題を簡素化し、ローカルでビルドおよびデバッグし、クラ ウドで大規模にデプロイし、トリガーとバインドを使用して関数を Azure サービスに接 続します。 5 出典:Microsoft
Azure Functionsについて • トリガーとバインド トリガー:関数の呼び出し方法を定義(タイマー、HTTPなど…) バインド:別リソースへの接続を定義(≒ データの授受) 6 入力バインド 出力バインド
Event Hub Functions Cosmos DB トリガー 例:IoTデバイスから取得したデータをCosmosDBに格納する 参考:トリガーとバインドの種類
実際に作ってみる • 今回作成するもの 7 出力バインド Functions Cosmos DB HTTPリクエスト
実際に作ってみる • 今回作成するもの 8 出力バインド Functions Cosmos DB HTTPリクエスト ローカルで
実際に作ってみる • 開発環境 • プログラミング言語:Java(Java11) • ビルドツール:Maven • エディター:Visual Studio
Code ⇒ intelliJ、Eclipseでの開発も可能です • 拡張機能:Azure Functions Extension Pack for Java • その他:Azure Storage Explorer ⇒今は「Azurite」の利用が推奨 Azure Cosmos DB Emulator 9
実際に作ってみる 10 Azure Functions拡張機能 下記ができるようになります。 ①テンプレートの利用 ②ローカルでのデバッグ、実行 (一部の関数を実行するには、AzuriteかAzure Storage Explorerが必要です)
③Azure上のAzure Functionsへのデプロイ テンプレート デバッグ、実行 デプロイ
実際に作ってみる 11 VS Codeから、テンプレートを使ってプロジェクトを作成します。
実際に作ってみる 12 構成とFunctionsはこんな感じになります。
実際に作ってみる コードを書き換え、HTTPリクエストを受け取って、 CosmosDBに書き込むようにします。 13
実際に作ってみる 14 Cosmos DBの設定
実際に作ってみる 15 Cosmos DBの設定 実はこれも ローカルなんです
実際に作ってみる 16 Cosmos DB Emulator サービスコストを発生させることなく、ローカルでAzure Cosmos DBのデータの作成やモデル化が行え るツールです。
実際に作ってみる [F5キー]で作成した関数を実行して、叩いてみます。 「Hello!」が追加されています。 17 パラメータを追加 してます。
まとめ ✓ローカルでいろいろ試せるのはとても便利 特にお金関連であまり気にしなくて良いのがありがたいです。 ✓拡張機能を追加するだけなので、開発も始めやすい (都度、必要に応じてエミュレータ等が必要) ✓一方で正直なところ、FunctionsはJava以外の言語が優遇されがち、、、 (トリガーのテンプレート数やPortalで開発ができる) ✓今後の大サーバレス時代で重要なサービスなので、是非触ってみてください! 18