Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
近頃若者のサーバー離れが深刻化しています
Search
Mitsuzono Hiroto
November 28, 2018
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
近頃若者のサーバー離れが深刻化しています
2018/11/28 Alternative Architecture DOJO Offline #1
Mitsuzono Hiroto
November 28, 2018
More Decks by Mitsuzono Hiroto
See All by Mitsuzono Hiroto
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
860
ここらでGPSマルチユニットが如何に使いやすいか本気で説明するから聞きなさい
mitsuzono
0
1.7k
Application insightsを用いてAzure AD B2Cをより使いこなす
mitsuzono
0
680
Application Insights と KQL
mitsuzono
0
660
LINE Messaging API メッセージ送受信とアカウント連携まわり
mitsuzono
0
150
Application Insights と Cosmos DB ―たかがTips、そう思ってないですか?―
mitsuzono
0
110
新卒、ヘルキャンプとデスマーチへの挑戦
mitsuzono
0
530
Other Decks in Technology
See All in Technology
The kernel report
ennael
PRO
1
250
『GOエコノミー 』(相乗りサービス) におけるスペック駆動開発
mot_techtalk
1
300
Databricksメトリクスビューはじめてのもくもく会
taka_aki
0
200
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
350
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
140
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
330
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
190
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
320
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
140
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
120
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
400
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
220
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
600
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Building the Perfect Custom Keyboard
takai
2
890
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
350
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Being A Developer After 40
akosma
91
590k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Building Adaptive Systems
keathley
44
3.2k
Designing for Performance
lara
611
70k
Transcript
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. 近頃若者のサーバー離れが深刻化しています 株式会社オルターブース
満園 裕人 古野 新悟
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 株式会社オルターブース
エンジニア • C#とPHPを使ったWebアプリケーションの開発 • 自社サービスの開発もメインで携わる • 今年のISUCONダメだったので来年に向けて修行中… 自己紹介 満園 裕人
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 株式会社オルターブース
エンジニア • 主にC#とPHPを使った開発を行う • KOSMISCHをなどの自社サービスの開発に携わる • 機械学習やディープラーニングに興味あり • 1児の父。娘ラブ! 自己紹介 古野 新悟
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • クラウドネイティブなアーキテクチャを組む際の考慮ポイント
• 開発してて思ったこと • 開発する際に気をつけているポイント • ローカル開発について • 実感した良いところ・気をつけるところ • デモ(Durable Functions) 今日話す内容
クラウドネイティブな アーキテクチャを組む際の 考慮ポイント
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 基本的にPaaS,FaaS中心で組んでる
• ポータルからポチポチ作ればいきなりアプリをデプロイして動かせる • 環境構築が楽 • 設定回りも楽 • ログ • 環境変数 • アクセスキー • 監視・管理が楽 全体的なアーキテクチャの組み方
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. 例:MVCのWebアプリと月次処理 ASP.NET
MVC タイマートリガーで 集計処理を実行
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 機能的に切り出しできる部分を切り出す
• メール送信、ファイルアップロードなど Serverlessを活用したアーキテクチャの組み方 REST REST フロントJS
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 1Functionあたりで行う処理は細かくしていく
• 例えばこのAPI叩いてあのAPI叩いて…ということを一つの Functionで行おうとしている場合、必要に応じて切り分ける Serverlessを活用したアーキテクチャの組み方 REST REST REST REST
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 入口は一つにする
• 「複数の入力形式を受け付けて、内部で判別する」は× • 複数Functionに分けて、内部の処理フローはシンプルにする Serverlessを活用したアーキテクチャの組み方 {JSON} {JSON} {JSON} {JSON}
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. 例:DurableFunctionsで月次処理 Blob
CosmosDB Durable Functions REST 月次データ生成 DB格納処理 Blob格納処理 通知処理 結果画面 結果ファイル取得 WebApp WebApp
開発時のTipsなど
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • Functionの入出力データの形式は明確に
• ドキュメントを残す • リクエストやレスポンスのサンプルなど • 環境変数の設定値 • バリデーションの実装 • 問題の切り分けがしやすいよう • リクエストパラメータの不備など • ログの出力により、発生場所を明確に • 複数のリソースを使用するため、どの部分で発生したかを区別す るために細かく出力する 実際の開発におけるポイント
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • これがあると便利
• Postman • ngrok • ローカル上のネットワークサービスを外部公開できる • 使用するツールのバージョンには気をつけましょう • 更新が早いのでツールのバージョンの違いで動かなくなることも 多々 • 各種エミュレータなど • リモートデバッグ実行 • 実際にクラウド上で動いているものを確認できた方が良い ローカル開発環境のポイント
実際に開発して感じたこと
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • サーバー構築・監視の手間を省くことができる
• 機能単位での開発に完全分割できる • 1機能の開発に集中できる • Durable Functionsには数種類の実行パターンがあり、シーンに合わ せて利用できる 良いところ
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 全体構成は複雑化する
• ひっくり返すと、問題の切り分けはしやすいと言える • 開発チーム内でのドキュメント共有などは、土台を作っておかな いとしぬ • レイテンシ問題 • 速度を重視する場合、ネットワークがネックになる可能性がある 気をつけるポイント
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • アーキテクチャを考えていくうえで、サービス自体を簡素化できる
• 承認フローbotを作ると、承認フローそのものの改善に繋がる • 新しい技術だとブログとかなかなか見つからない • ドキュメント、実装、Issueを見る • 但しドキュメントはローカライズで情報違ったりするので注意 • サポートに問い合わせた方が早い場合もある その他
デモ
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • ローカルデバック中のWebAppからローカルデバック中のFunctions
を実行する • Functionsの動作テストをPostmanなどでしている。 • でも実際に開発中の画面で動作確認をしたい。 • でもAzure Functions の準備は今すぐできない。。。 • でも実装した画面でテストしたい!!! と、思ったことがある方は是非試してみてください。 • Durable Functionsのアンチパターンに触れてみた デモ
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. デモ(ローカルデバック)
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. デモ(アンチパターン)
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. Durable Functions
について、もっと知りたいという方は、 弊社松村が発表した資料がありますので、こちらをご覧ください。 【サーバーレスの常識を覆す Azure Durable Functionsを使い倒す】 https://www.slideshare.net/YutaMatsumura/azure-durable- functions-111003205
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • アーキテクチャを組む際は一つ一つをシンプルにしていく
• 新しい技術を扱う場合、公式ドキュメントやその技術の実装内容を追 う力が必要になる • 開発チーム内での情報共有やログ・エラーハンドリングの実装をしっ かり行うことが大事 • PaaSやServerlessをフル活用し開発効率UPと品質向上に繋げる まとめ
Copyright © 2015-2018 ALTERBOOTH inc. All Rights Reserved. • 触ったことない方はまずHTTPで実行できるFunctionから
• 既に実践してる方は情報交換しましょう まずは実践してみましょう
ご清聴ありがとうございました。