Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Serverless overview and updates 2019
Search
miyake
July 27, 2019
Technology
0
320
Azure Serverless overview and updates 2019
「MVP x Student Meetup@つくば 」で発表させていただいたスライドです。
miyake
July 27, 2019
Tweet
Share
More Decks by miyake
See All by miyake
Azure Serverless × AI Agent × MCP アーキテクチャ最前線 / Azure Serverless Agent Architecture
miyake
15
4.4k
Cosmos DB で持続可能な RAG を実現しよう!~ AOAI Dev Day ふりかえりを添えて / Sustainable RAG with Cosmos DB with recap AOAI Dev Day
miyake
1
360
Mirroring Azure Cosmos DB in Microsoft Fabric
miyake
2
260
LLM 時代におさえておきたい Azure Serverless ファミリーまとめ / serverlessdaystokyo2023-llm-aoai
miyake
9
2.9k
Nuxt Studio を使ってみた / nuxt-studio-intro
miyake
1
1.2k
Microsoft Build 2023 で発表された Cosmos DB の注目アップデート / Microsoft Build 2023 Cosmos DB update
miyake
1
890
祝 🎉 両方とも正式リリース! GitHub Codespaces と Nuxt3 で次世代開発体験 / codespaces-nuxt3
miyake
0
1.5k
Static Site Generator でサイト構築 / building sites with static site generator
miyake
1
420
Design and implementation of Cosmos DB Change Feed-centric architecture
miyake
0
1.1k
Other Decks in Technology
See All in Technology
Lookerで実現するセキュアな外部データ提供
zozotech
PRO
0
160
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
930
Jakarta Agentic AI Specification - Status and Future
reza_rahman
0
110
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
380
初めてのDatabricks AI/BI Genie
taka_aki
0
200
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.5k
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
490
AI時代のワークフロー設計〜Durable Functions / Step Functions / Strands Agents を添えて〜
yakumo
3
230
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
0
190
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
190
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
6
1.6k
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
140
Featured
See All Featured
Side Projects
sachag
455
43k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Six Lessons from altMBA
skipperchong
29
4.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Building an army of robots
kneath
306
46k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Building Adaptive Systems
keathley
44
2.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Fireside Chat
paigeccino
41
3.7k
Transcript
Azure Serverless 最新情報(2019 年夏編) MVP x Student Meetup@つくば
About Me 三宅 和之 @kazuyukimiyake 株式会社ゼンアーキテクツ CTO Microsoft MVP (
for Microsoft Azure ) Vue.js ⽇本ユーザーグループ コアスタッフ typescript-jp コアスタッフ PaaS がかりの部屋(Blog): https://k-miyake.github.io/blog/
Serverless とは Serverless = BaaS ( Backend as a Service)
+ FaaS ( Functions as a Service) martinfowler.com 記事
Serverless のねらい "サーバーが無い" ではなく "サーバーの運⽤管理がほぼ不要" という概念 インフラに費やす時間やリソースを最⼩限に抑えるアプローチ "⾃分のコード(ビジネス)" のみに集中できる
Azure Serverless ファミリー Azure Functions だけが Serverless ではない (⼀部便乗っぽいサービスもあるが) Serverless
ラインナップは拡⼤中
Serverless アーキテクチャ例#1 センサーデータやクリックストリームのデータ処理フローを”⼿軽に”構築 動画(くらでべ - de:code 2019 DP81): https://youtu.be/qBmNi3ZrsUk
Serverless アーキテクチャ例#2 グローバルにスケールするアプリケーションを最⼩限のコードで構築 MS 本社の エンジニア Matias が Azure Friday
でデモを実施したアーキテクチャ 動画( Azure Friday )https://youtu.be/cfZUiVQIhTw
キーテクノロジー: Azure Functions バインディングによりコード量が⼤幅に減る C# だけではない( Node.js オススメ! ) OSS
として開発されている- https://github.com/Azure/Azure-Functions V2 に進化した
トリガーとバインディング (おさらい) トリガー: イベントに応じて Function を発⽕ バインディング: データの⼊出⼒をラッピングする
Azure Functions は V2 へ進化(更新を推奨) Runtime を Host process と
Worker process に分離 新機能はほとんどが V2 のみをサポート (V1 はほぼメンテナンスされていない)
Premium Plan 登場 コールドスタート問題から開放 ⾼速にスケール 200 インスタンスまで
TypeScript サポート Node.js ベースでの Azure Functions 開発が安全・快適に! import { AzureFunction,
Context } from "@azure/functions"; const cosmosDBTrigger: AzureFunction = async function( context: Context, documents: Tweet[] ): Promise<void> { if (!!documents && documents.length > 0) { context.log("Document: ", documents[0].tweetText); } context.bindings.signalRMessages = [ { target: "newMessage", arguments: [documents] } ]; };
キーテクノロジー: Cosmos DB A globally distributed, massively scalable, multi-model database
service. 主な特⻑ サーバーレス - No infrastructure or VM management グローバル分散 - Turnkey geo-replication マルチモデル, マルチ API ストレージとスループットをエラスティックにスケール可能 99th パーセンタイル内に 10ms 以下のレイテンシーを保証
Change Feed Serverless なマイクロサービスを実現するためのキーテクノロジー 同時に複数の Feed を出⼒可能(DB は稼働させながら追加可能)
Azure Functions CosmosDB Trigger Cosmos DB のデータ変更によって Azure Functions が発⽕する
Cosmos DB Trigger が Change Feed Processor ライブラリを利⽤(ラッピング) 複数の Change Feed を独⽴して配置可能 クロスパーテーションでデータにアクセスしたい場合に便利
キーテクノロジー: SignalR Service Web にリアルタイム通信機能を実装できるサービス WebSocket の Hub 機能が Serverless
化
signalr.js によるリアルタイム更新の実装 created: async function(): Promise<void> { console.log("VUE_APP_HOST: ", process.env.VUE_APP_HOST);
// SignalR とコネクションを作成 const connection = new HubConnectionBuilder() .withUrl(this.baseUrl) .configureLogging(LogLevel.Information) .build(); console.log("connecting..."); // SignalR Service への接続 connection .start() .then(() => console.log("connected!")) .catch(console.error); // SignalR からの呼び出し connection.on("newMessage", (tweets: Tweet[]) => this.displayTweet(tweets)); // 切断 connection.onclose(() => console.log("disconnected")); }
キーテクノロジー: SQL DB Serverless ⼀定時間アクセスしなければ、インスタンスが停⽌する 課⾦も⽌まるため、コストを最適化できる 再始動時やオートスケール時はコールドスタートなのでスパイク対策には不向き
Azure Serverless の課題(個⼈的⾒解) フロントエンド SPA ベース Web アプリのデプロイ先が微妙 SPA にとって
App Service はオーバースペック Static Website ホスティング機能がショボい Firebase や Netlify 相当の機能が求められる
ご清聴ありがとうございました Special Thanks! Yoichi Kawasaki (Microsoft) Matias Quaranta (Microsoft) shibayan