Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Yusuke Suzuki
PDF, PPTX
28,830 views
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
2017年5月31日に行われたAWS Dev Day Tokyo 2017での講演「クラウド時代のマイクロサービス設計徹底解説!」改め「マイクロサービス化設計入門」の講演資料です。
Technology
◦
Read more
65
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 61
2
/ 61
3
/ 61
4
/ 61
5
/ 61
6
/ 61
7
/ 61
8
/ 61
9
/ 61
10
/ 61
11
/ 61
12
/ 61
13
/ 61
14
/ 61
15
/ 61
16
/ 61
17
/ 61
18
/ 61
19
/ 61
20
/ 61
21
/ 61
22
/ 61
23
/ 61
24
/ 61
25
/ 61
26
/ 61
27
/ 61
28
/ 61
29
/ 61
30
/ 61
31
/ 61
32
/ 61
33
/ 61
34
/ 61
35
/ 61
36
/ 61
37
/ 61
38
/ 61
39
/ 61
40
/ 61
41
/ 61
42
/ 61
43
/ 61
44
/ 61
45
/ 61
46
/ 61
47
/ 61
48
/ 61
49
/ 61
50
/ 61
51
/ 61
52
/ 61
53
/ 61
54
/ 61
55
/ 61
56
/ 61
57
/ 61
58
/ 61
59
/ 61
60
/ 61
61
/ 61
More Related Content
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PDF
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
by
Amazon Web Services Japan
PDF
20190911 AWS Black Belt Online Seminar AWS Batch
by
Amazon Web Services Japan
PDF
20191120 AWS Black Belt Online Seminar Amazon Managed Streaming for Apache Ka...
by
Amazon Web Services Japan
PDF
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
by
Amazon Web Services Japan
PDF
Infrastructure as Code (IaC) 談義 2022
by
Amazon Web Services Japan
PDF
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
by
Amazon Web Services Japan
PPTX
20220409 AWS BLEA 開発にあたって検討したこと
by
Amazon Web Services Japan
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
by
Amazon Web Services Japan
20190911 AWS Black Belt Online Seminar AWS Batch
by
Amazon Web Services Japan
20191120 AWS Black Belt Online Seminar Amazon Managed Streaming for Apache Ka...
by
Amazon Web Services Japan
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
by
Amazon Web Services Japan
Infrastructure as Code (IaC) 談義 2022
by
Amazon Web Services Japan
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
by
Amazon Web Services Japan
20220409 AWS BLEA 開発にあたって検討したこと
by
Amazon Web Services Japan
What's hot
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
PPTX
Redisの特徴と活用方法について
by
Yuji Otani
PDF
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
by
Amazon Web Services Japan
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
PDF
AWS Black Belt Online Seminar AWS Direct Connect
by
Amazon Web Services Japan
PDF
20190514 AWS Black Belt Online Seminar Amazon API Gateway
by
Amazon Web Services Japan
PDF
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
by
Amazon Web Services Japan
PDF
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
by
Amazon Web Services Japan
PDF
20210119 AWS Black Belt Online Seminar AWS CloudTrail
by
Amazon Web Services Japan
PPTX
[社内勉強会]ELBとALBと数万スパイク負荷テスト
by
Takahiro Moteki
PDF
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
by
Amazon Web Services Japan
PDF
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
by
Amazon Web Services Japan
PDF
CloudFormation/SAMのススメ
by
Eiji KOMINAMI
PDF
20200818 AWS Black Belt Online Seminar AWS Shield Advanced
by
Amazon Web Services Japan
PDF
Amazon Redshift 概要 (20分版)
by
Amazon Web Services Japan
PDF
[AKIBA.AWS] VGWのルーティング仕様
by
Shuji Kikuchi
PDF
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
by
NTT DATA Technology & Innovation
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
Redisの特徴と活用方法について
by
Yuji Otani
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
by
Amazon Web Services Japan
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
AWS Black Belt Online Seminar AWS Direct Connect
by
Amazon Web Services Japan
20190514 AWS Black Belt Online Seminar Amazon API Gateway
by
Amazon Web Services Japan
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
by
Amazon Web Services Japan
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
by
Amazon Web Services Japan
20210119 AWS Black Belt Online Seminar AWS CloudTrail
by
Amazon Web Services Japan
[社内勉強会]ELBとALBと数万スパイク負荷テスト
by
Takahiro Moteki
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
by
Amazon Web Services Japan
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
by
Amazon Web Services Japan
CloudFormation/SAMのススメ
by
Eiji KOMINAMI
20200818 AWS Black Belt Online Seminar AWS Shield Advanced
by
Amazon Web Services Japan
Amazon Redshift 概要 (20分版)
by
Amazon Web Services Japan
[AKIBA.AWS] VGWのルーティング仕様
by
Shuji Kikuchi
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
by
NTT DATA Technology & Innovation
Viewers also liked
PDF
JJUG初心者のためのJava/JJUG講座
by
Yusuke Suzuki
PDF
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
by
Yusuke Suzuki
PDF
ITトレンドに見る日本のエンタープライズITについて
by
Yusuke Suzuki
PDF
日本Javaグループ2017年定期総会 #jjug
by
日本Javaユーザーグループ
PDF
オープンデータの広がりと今後の課題ー関西での活動を中心にー
by
Kouji Kozaki
PPTX
Spring boot劇的ビフォーアフター
by
orekyuu
PDF
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
by
Amazon Web Services Japan
PDF
[Japan Tech summit 2017] CLD 015
by
Microsoft Tech Summit 2017
PDF
[Japan Tech summit 2017] APP 003
by
Microsoft Tech Summit 2017
PDF
マイクロサービスアーキテクチャの設計 - JUG2015
by
Yusuke Suzuki
PPTX
ビッグデータだけじゃない Amazon DynamoDBの活用事例
by
Ken Nakanishi
PDF
SharePoint Online Communication Sites お手軽サイト作成
by
Hirofumi Ota
PDF
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
by
de:code 2017
PDF
[DO07] マイクロサービスに必要な技術要素はすべて Spring Cloud にある
by
de:code 2017
PDF
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
by
Yusuke Suzuki
PDF
マイクロにしすぎた結果がこれだよ!
by
mosa siru
PPTX
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
by
Toshiaki Maki
PDF
Java SE 9 のススメ
by
Yuichi Sakuraba
PDF
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
by
LINE Corporation
PPTX
イベント・ソーシングを知る
by
Shuhei Fujita
JJUG初心者のためのJava/JJUG講座
by
Yusuke Suzuki
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
by
Yusuke Suzuki
ITトレンドに見る日本のエンタープライズITについて
by
Yusuke Suzuki
日本Javaグループ2017年定期総会 #jjug
by
日本Javaユーザーグループ
オープンデータの広がりと今後の課題ー関西での活動を中心にー
by
Kouji Kozaki
Spring boot劇的ビフォーアフター
by
orekyuu
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
by
Amazon Web Services Japan
[Japan Tech summit 2017] CLD 015
by
Microsoft Tech Summit 2017
[Japan Tech summit 2017] APP 003
by
Microsoft Tech Summit 2017
マイクロサービスアーキテクチャの設計 - JUG2015
by
Yusuke Suzuki
ビッグデータだけじゃない Amazon DynamoDBの活用事例
by
Ken Nakanishi
SharePoint Online Communication Sites お手軽サイト作成
by
Hirofumi Ota
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
by
de:code 2017
[DO07] マイクロサービスに必要な技術要素はすべて Spring Cloud にある
by
de:code 2017
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
by
Yusuke Suzuki
マイクロにしすぎた結果がこれだよ!
by
mosa siru
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
by
Toshiaki Maki
Java SE 9 のススメ
by
Yuichi Sakuraba
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
by
LINE Corporation
イベント・ソーシングを知る
by
Shuhei Fujita
Similar to マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
PDF
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
by
Yusuke Suzuki
PDF
マイクロサービス化に向けて
by
HIRA
PDF
なぜ「マイクロサービス“化”」が必要なのか
by
Yusuke Suzuki
PDF
30分でわかるマイクロサービスアーキテクチャ 第2版
by
Naoki (Neo) SATO
PDF
要求の変化とマイクロサービスアーキテクチャ
by
Yusuke Suzuki
PPTX
20180525 system department manager microservices
by
kounan13
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
PPTX
Preparation to Start the Microservice for Java EE developers
by
Yoshio Terada
PDF
マイクロサービスアーキテクチャとは何か
by
Yusuke Suzuki
PDF
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
by
Daisuke Nishino
PDF
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
by
Yusuke Suzuki
PPTX
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
by
Takahiro Fujii
PDF
Monolith to microservice
by
YorikoYokoyama
PDF
Monolithtomicroservices
by
Shotaro Suzuki
PPTX
API Academy:マイクロサービス化へのファーストステップ
by
CA Technologies
PDF
オトナのService Fabric~マイクロサービス編
by
Tatsuaki Sakai
PDF
CHK-009_マイクロサービス アーキテクチャのすゝめ ~エンタープライズ システムを分割リリースせよ!!~
by
decode2016
PDF
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
by
Yusuke Suzuki
PDF
Design Pattern MicroServices Architecture in Japanese
by
Lei Xu
PDF
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
by
Yusuke Suzuki
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
by
Yusuke Suzuki
マイクロサービス化に向けて
by
HIRA
なぜ「マイクロサービス“化”」が必要なのか
by
Yusuke Suzuki
30分でわかるマイクロサービスアーキテクチャ 第2版
by
Naoki (Neo) SATO
要求の変化とマイクロサービスアーキテクチャ
by
Yusuke Suzuki
20180525 system department manager microservices
by
kounan13
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
Preparation to Start the Microservice for Java EE developers
by
Yoshio Terada
マイクロサービスアーキテクチャとは何か
by
Yusuke Suzuki
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
by
Daisuke Nishino
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
by
Yusuke Suzuki
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
by
Takahiro Fujii
Monolith to microservice
by
YorikoYokoyama
Monolithtomicroservices
by
Shotaro Suzuki
API Academy:マイクロサービス化へのファーストステップ
by
CA Technologies
オトナのService Fabric~マイクロサービス編
by
Tatsuaki Sakai
CHK-009_マイクロサービス アーキテクチャのすゝめ ~エンタープライズ システムを分割リリースせよ!!~
by
decode2016
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
by
Yusuke Suzuki
Design Pattern MicroServices Architecture in Japanese
by
Lei Xu
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
by
Yusuke Suzuki
More from Yusuke Suzuki
PDF
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
by
Yusuke Suzuki
PDF
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
by
Yusuke Suzuki
PDF
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
by
Yusuke Suzuki
PDF
Javaとコミュニティの歩み 2020
by
Yusuke Suzuki
PDF
エンタプライズ領域のアジャイル開発の課題 - FIT2020
by
Yusuke Suzuki
PDF
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
by
Yusuke Suzuki
PDF
エンタープライズ、アーキテクチャ、アジャイルのこれから
by
Yusuke Suzuki
PDF
アーキテクチャのレビューについて - JaSST Review '18
by
Yusuke Suzuki
PDF
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
by
Yusuke Suzuki
PDF
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
by
Yusuke Suzuki
PDF
Javaはコミュニティの力で再び偉大になれるのか
by
Yusuke Suzuki
PDF
Javaのカルチャーとグロース - MANABIYA 2018
by
Yusuke Suzuki
PDF
アジャイル開発を支えるアーキテクチャ設計とは
by
Yusuke Suzuki
PDF
エナジャイル設立によせて
by
Yusuke Suzuki
PDF
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
by
Yusuke Suzuki
PDF
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
by
Yusuke Suzuki
PDF
JavaOne 2016総括 #jjug
by
Yusuke Suzuki
PDF
クラウド時代のエンジニアについて #sesfukui
by
Yusuke Suzuki
PDF
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
by
Yusuke Suzuki
PDF
ウォーターフォールとアジャイルを考える #ita_ws
by
Yusuke Suzuki
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
by
Yusuke Suzuki
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
by
Yusuke Suzuki
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
by
Yusuke Suzuki
Javaとコミュニティの歩み 2020
by
Yusuke Suzuki
エンタプライズ領域のアジャイル開発の課題 - FIT2020
by
Yusuke Suzuki
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
by
Yusuke Suzuki
エンタープライズ、アーキテクチャ、アジャイルのこれから
by
Yusuke Suzuki
アーキテクチャのレビューについて - JaSST Review '18
by
Yusuke Suzuki
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
by
Yusuke Suzuki
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
by
Yusuke Suzuki
Javaはコミュニティの力で再び偉大になれるのか
by
Yusuke Suzuki
Javaのカルチャーとグロース - MANABIYA 2018
by
Yusuke Suzuki
アジャイル開発を支えるアーキテクチャ設計とは
by
Yusuke Suzuki
エナジャイル設立によせて
by
Yusuke Suzuki
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
by
Yusuke Suzuki
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
by
Yusuke Suzuki
JavaOne 2016総括 #jjug
by
Yusuke Suzuki
クラウド時代のエンジニアについて #sesfukui
by
Yusuke Suzuki
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
by
Yusuke Suzuki
ウォーターフォールとアジャイルを考える #ita_ws
by
Yusuke Suzuki
Recently uploaded
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
PDF
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
PDF
PMBOK 7th Edition Project Management Process Scrum
by
akipii ogaoga
PDF
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
PDF
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
PDF
PMBOK 7th Edition_Project Management Process_WF Type Development
by
akipii ogaoga
PDF
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
PDF
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
PDF
PMBOK 7th Edition_Project Management Context Diagram
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
PMBOK 7th Edition Project Management Process Scrum
by
akipii ogaoga
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard
by
akipii ogaoga
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
PMBOK 7th Edition_Project Management Process_WF Type Development
by
akipii ogaoga
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
PMBOK 7th Edition_Project Management Context Diagram
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
1.
〜マイクロサービスを設計するすべての開発者に送る〜 クラウド時代のマイクロサービス設計徹底解説! 2017/5/31 鈴木雄介 グロースエクスパートナーズ株式会社 執行役員 日本Javaユーザーグループ 会長 AWS
Dev Day Tokyo 2017
2.
〜マイクロサービスを設計するすべての開発者に送る〜 クラウド時代のマイクロサービス設計徹底解説! 2017/5/31 鈴木雄介 グロースエクスパートナーズ株式会社 執行役員 日本Javaユーザーグループ 会長 AWS
Dev Day Tokyo 2017 マイクロサービス化設計入門
3.
自己紹介 鈴木雄介 • グロースエクスパートナーズ(株) » 執行役員/アーキテクチャ事業本部長 »
http://www.gxp.co.jp/ • 日本Javaユーザーグループ » 会長 » http://www.java-users.jp/ • SNS » http://arclamp.hatenablog.com/ » @yusuke_arclamp 2
4.
主な対象と前提 • 既存でモノリシックなシステムが存在 »SoR系(モード1)とSoE系(モード2)のシステムが混在し、そ れぞれに連携している • マイクロサービスにこれから取り組む/取り組み始めた •
いきなりマイクロサービス化することは技術的にも組織的 にも容易ではない気がしている • 具体的な作り方は話しません »アイコンのみ付けてます 3
5.
アジェンダ • なぜマイクロサービスか • マイクロサービス化設計 »サービス分割 »メッセージング »無停止デプロイ »レジリエンス »テスト戦略
など • まとめ 4
6.
なぜマイクロサービスか 5
7.
なぜマイクロサービスか ウェブサービスの状況 • システム全体は巨大化していく »システム全体の中には様々な機能(SoR/SoE)がある »それぞれが独自のライフサイクルを持っている • でも、ビジネス環境の変化には素早く適応したい »機能やリソースの変更を素早く、無停止で行いたい 6
8.
従来のアプローチ モノリシックにおける戦略 • アプリ内の適切な機能分割設計 »アプリ内を分割してコード変更の影響範囲を限定する ▸クラス設計パターン、マルチティア、UI/Logic/DAOなど »そのアプリを1つのノードとして配備し、それぞれ連携 7 インフラ アプリ システム インフラ アプリ インフラ アプリ システム システム
9.
従来のアプローチ モノリシックの弊害 • 実行時の影響範囲が見えにくい »設計時の分割だけでは実行時の依存関係を把握す ることは困難 »部分への性能劣化が全体に波及しやすい »影響調査とリグレッションテストに工数を消費 • 巨大化すると難易度があがる »個別変更でも全体調整 »部分変更でもシステム全体をリリース 8
10.
サービス化による戦略 • アプリを機能ごとにサービスで分割していく »サービス=稼働状態にあるアプリケーション ▸機能だけではなく非機能も切り分けられている »サービスは個別ノードに配備し、ゆるやかに連携している マイクロサービスのアプローチ 9 サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) システム全体 サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) サービス (アプリ+ インフラ) サービス (アプリ+ インフラ)
11.
マイクロサービスのアプローチ マイクロサービスアーキテクチャ • 実行時の影響範囲が限定しやすい »APIを通じたサービス同士の依存関係が明確 »サービスが独立しており、他とは疎結合 • 巨大化してもサービス単位で管理 »サービス単位に好きなタイミングで仕様変更、リ ソース変更ができる ▸「速さ」ではなく「独立性」が重要 10
12.
なぜマイクロサービスか マイクロサービス化の目的と手段 • システム全体が巨大になろうとも、機能別に好きなタイミ ングで機能やリソースの変更を行いたい • そこで、機能をサービス化してノード分割し、それらを管 理することにした »クラウドによる仮想化技術の普及が管理ノードの増加を後押し »自動化によりインフラ構築コストを0にすることができる 11
13.
マイクロサービス化設計 12
14.
マイクロサービス化設計 マイクロサービス化設計における考慮点 • サービス分割 • 横断的関心事の分離 •
データの分離 • メッセージング 13 • 無停止デプロイ • レジリエンス • テスト戦略 • チーム体制
15.
マイクロサービス化設計 サービス分割 14
16.
サービス分割 サービスの分割はどうあるべきか? • 増:細かく分割するほど機能単位での再利用性が高まる • 減:ノード間連携のオーバーヘッドは大きく、管理も難 »分散コンピューティングの限界 •
よって、適切な大きさ/数に分割する必要がある »先進的な企業で数百サービス×マルチノード=数千ノード 15
17.
サービス分割 サービスの粒度は「サービスによる」 • ナノ: 0-3人月程度の単機能なAPI •
マイクロ:3-20人月程度で複数のAPIを提供 • 既存のシステム単位に近いサービス粒度 »ミニ:20-100人月程度。3-6人でメンテ »中規模:100-300人月程度。7-10人がかりでメンテ »大規模:中規模以上 16 Amazon API Gateway
18.
サービス分割 サービスはドメイン単位にする? • ドメインとは? »ドメイン≒業務(利用者視点での関心事のカタマリ) »商品登録ドメイン、発注ドメイン、物流ドメイン… • ドメインはボトムアップで発見すべき »実践してフィードバックによって学んでいくしかない ▸例:コードにして検証して改善する »ただ、それだけだと辛い 17
19.
サービス分割 サービス観点で分割する • 業務や利用の観点で変更が発生する要因をくくる »「変更要因」のタイミングや理由が同じモノをくくる »同時に変更が発生するものは一緒にしておけばいい • 作り手の観点ではないことに注意が必要 »従来のモノリシックにおける分割とは観点が異なる ▸例:UI/ロジック/DAOのような技術特性での分割 ▸もちろん、サービス内部は作り手の観点でよい »ただし、技術的な限界は存在する 18
20.
サービス分割 変更発生要因が分離しうる要素 »フロントエンド(SPA)とバックエンドの分離などはユーザー種が 原因と考えることができる 19 No 要因 例 1
ユーザー種 コンシューマーか、社内部門か 2 目的 探したいか、注文したいか 3 利用プロセス 個別処理か、一括処理か 4 利用状況 PC利用か、モバイル利用か 5 ユーザー思考 容易にか、細かくか 6 ビジネス要件 商品登録か、物流か
21.
サービス分割 いかに技術制約を超えていくか • サービス分割は「分けれるものを分ける」だけ »変更の発生要因の違いは常に分割点になりうる • 問題は分割時の技術制約をどうするか »ここから後の話の 20
22.
マイクロサービス化設計 横断的関心事の分離 21
23.
横断的関心事の分離 「横断的機能」の分離 • わかりやすい例は認証認可、ログ、設定管理 »複数のサービスで共有する機能 »複数のサービスを俯瞰的に見る機能 • サービス分割のために横断的関心事の早期分離が必要 »いわゆる「プラットフォーム」の機能を拡充させる 22
24.
認証認可 認証機能な段階的な移設 »共有データ:AとBの機能仕様が共有される必要がある »API化:サービスAにサービスBの都合が含まれる »専用サービス化:横断的関心事として切り出される 23 サービスA サービスB 共有データ RDB、インメモリ サービスA サービスB API化 サービスA
サービスB 専用サービス化 認証 サービス Amazon Cognito AWS Directory Service
25.
ログ基盤 リクエストの分散トレース • サービスをまたがったトレーサビリティの確保 »リクエストやサービス間通信にIDを発行する »各サービスからはログ基盤にログを送信する • 監視、分析 »さらにログをベースにした異常検知、アクセス/メトリクス分析 24 ログ基盤 サービスA
サービスB サービスC ログ監視 ログ検索 ログ分析Amazon CloudWatch Amazon Kinesis
26.
設定管理 設計情報の集中管理 • 環境に依存する設定情報を集中管理する »各サービス内に設定ファイルを配置するのではなく、ネットワー ク経由で取得する »Spring Cloud
Config 25 設定管理サーバ サービスA サービスB サービスC ①起動時に設定を取得
27.
AWSのプラットフォーム機能 26
28.
マイクロサービス化設計 データの分離 27
29.
データの分離 データは各サービスが管理する • データをサービス間で共有することは避けるべき »テーブル構造の変更が強制的に同期されるから • とはいえ、データの特性や種類に応じて方式を選択 »RDBの機能は有効活用。ただし、2フェーズコミットを避ける »不整合の許容範囲を決めることが重要 ▸許容できないなら疎結合化は困難になる »メッセージングの仕組みとの組み合わせで検討 28
30.
データ分離 • 共有データ:テーブルを共有する。変更同期が必要 • ビュー:参照公開前提だが、変更同期が必要 •
トリガー/ストアド:変更同期は不要。非機能同期が必要 • ETL:全て非同期になる 29 サービスA サービスB サービスA サービスB サービスA サービスB 共有データ ビュー トリガー/ストアド サービスA サービスB ETL Amazon RDS Amazon DynamoDB Amazon ElastiCache AWS Glue
31.
• イベントソーシング »データのステートではなくデータへのイベントを共有する ▸非同期ではあるが、時間的ズレを小さくできる »CQRS/コマンドクエリ責務分離 ▸コマンド:更新などのロジックを含む処理 ▸クエリ:検索などの単純な処理 イベント ストア データ分離 30 サービスA サービスB ステート イベントソーシング
32.
マイクロサービス化設計 メッセージング 31
33.
メッセージング サービス同士を連携させる • RESTful API
over HTTP »もっともシンプルで分かりやすい実装 • メッセージキューによる非同期化 »機能同士の非機能を分離することができる 32 サービスA サービスB サービスA サービスBキュー 同期型 非同期型 サービスA サービスB キュー Pub/Sub型 サービスC サービスD Amazon SQS
34.
不整合の許容 Amazonのクーポン • 非同期による不整合の許容 »サービス間の疎結合を重視する »運用でリカバリするほうがメリッ トが大きければクーポンもあり 33
35.
APIバージョニング サービス間のバージョン管理 1/2 • URLベース »URLにサービスのバージョンを表現してしまう »単純で実装しやすいが、古いサービスの維持が必要になる 34 V1 V2 GET
/v1/customer/1 GET /v2/customer/1
36.
サービス間のバージョン管理 2/2 • 互換性維持 »複数バージョンの機能を維持し、パラメタで判別 ▸例:HTTPヘッダの値(X-Protocol-Version) »バージョン切替は、 ▸返却データ形式であればMVCのビュー切替など ▸ロジックであればアダプタパターンなど APIバージョニング 35 GET
X-Protocol-Version:1 /customer/1 GET X-Protocol-Version:2 /customer/1 V1 V2
37.
マイクロサービス化設計 無停止デプロイ 36
38.
無停止デプロイ Continues Deploy • コードがサービスになるまでの一連を自動化 »コードチャックアウト、ビルド、テスト、パッケージング »サーバ構築、サーバ設定、デプロイ、起動、起動確認 37 Git
サーバ V1.1 チケット 管理 V1.1 チケットA チケットB サーバ V1.1 V1.0 CI/CDツール コード V1.1 サーバ構成 レポジトリ サーバ設定 チャット AWS CodeCommit AWS CodePipeline AWS CodeBuild
39.
無停止デプロイ ブルーグリーンデプロイメント • 瞬断せずにリリースを行うための手法 »1.新verを重複して構築 »2.ルーティングを制御して新verを解放 »3.旧verを削除 38 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 AWS CodeDeploy Elastic Load Balancing AWS
Elastic Beanstalk
40.
無停止デプロイ 別名:カナリアリリース • カナリア=炭鉱で天井に吊しておく鳥 »ガスは空気より軽いので一番最初に危険に気付く • カナリア=最初に新バージョンにアクセスするユーザー »何らかの障害が発生したら切り戻しを行う »少しの犠牲によって大部分を救うことができる 39
41.
無停止デプロイ 無停止スケールアップ • 瞬断せずにリソース増強する手法 »1.新しいインスタンスを重複して構築 »2.ルーティングを制御して新しいインスタンスを解放 »3.古いインスタンスを削除 40 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
42.
インテリジェントルーター サービスディスカバリとルーティング • 現在有効なサービスを判断するための方式 »新しく起動したサービスは自分の居場所を自分で登録する »レジストリに問合せてサービスを発見し、ルーティングする »Netflix Eureka、Zool 41 サービスA レジストリ ルーター サービスA サービスA ①自分自身の登録 ②リクエスト ③サービスの発見
43.
マイクロサービス化設計 レジリエンス 42
44.
レジリエンス マイクロサービスにおける可用性 • 障害が発生しないようにする、ではない »レジリエンス=復元力 »個別サービスの障害でシステム全体が停止しないようにする »従来の「停止しない部分を積み重ねる方式」は限界 • 階層型障害を避ける事が重要 43 サービスA
サービスB サービスC
45.
サーキットブレーカー 自分のことは自分で守る • サービス呼び出し時の異常処理対応 »障害発生時のパターン化 »タイムアウト、自動リトライ、デフォルト値、値のキャッシュ、 例外処理記述など »Netflix hystrix、Spring
Retry 44 機能B サーキット ブレーカー 機能A エラー処理
46.
マイクロサービス化設計 テスト戦略 45
47.
テスト戦略 マイクロサービスにおけるテスト戦略 • サービス間テスト »サービス内のテストは閉じている »他のサービスを呼び出し部分のテスト手法 • 本番環境のテスト »レジリエンスのテスト 46
48.
テスト戦略 • Test Doubles »本物を動かすのが大変なのでスタブやモックを使ってテストする »コンシューマー側でプロバイダの想定する挙動を実装し、それを 使ってテストする »プロバイダの変更が発生するとモックの変更が必要になる 47 サービスA サービスB のモック
49.
テスト戦略 • ダークカナリア(秘密のカナリア) »本番環境上に開発者しかアクセスできないテスト版をリリース »本物を使ってテストする(ただし、できないものもある) 48 サービスA サービスB サービスA テスト版
50.
テスト戦略 • Consumer-Driven Contract
testing »コンシューマーが要求するAPI挙動を契約として定義し、プロバ イダが契約を検証して破壊的変更を防ぐ »pact-jvm 49 サービスA サービスB 契約 サービスB 契約 サービスC サービスB
51.
テスト戦略 本番環境での”障害注入テスト” • Netflix’s “Failure
Injection Testing”(FIT) »ランダムにサーバーやデータセンターに障害を発 生させ、障害復旧が自動的に行われることを検証 »Netflix Chaos Monkeyなど • レジリエンスの検証は本番環境でテストする »コードのテストではなく、サービスのテスト 50
52.
マイクロサービス化設計 チーム体制 51
53.
チーム体制 コンウェイの法則 • サービス構成とチーム構成を同一にする »「アーキテクチャは組織に、組織はアーキテクチャにしたがう」 »チーム構成=サービス構成=ドメイン構成 »チームにサービスの自治権を与える • プラットフォームを管理するチームは必要 »横断的関心事の管理チーム 52
54.
まとめ 53
55.
なぜマイクロサービスか マイクロサービス化の目的と手段 • システム全体が巨大になろうとも、機能別に好きなタイミ ングで機能やリソースの変更を行いたい • そのために機能別にサービス化を行い、機能の独立性を高 めていった »機能間の依存性を管理し、可能な限り疎結合にしていく 54
56.
マイクロサービス化設計 マイクロサービス化設計における考慮点 • サービス分割 • 横断的関心事の分離 •
データの分離 • メッセージング 55 • 無停止デプロイ • レジリエンス • テスト戦略 • チーム体制
57.
マイクロサービス化設計 今日、話ができていないこと • コンテナ(Docker) »コンテナオーケストレーション • 非同期ストリーム処理 »HTTPの限界を超えていく •
サーバレス • マイクロサービス向けフレームワーク • その他、もろもろ 56 Amazon ECR Amazon ECS Amazon API Gateway Amazon AppStream AWS Step Functions Amazon SWF
58.
マイクロサービス化設計 マイクロサービス向けフレームワーク • Spring Cloud »Spring
Cloud Config »Spring Cloud Netflix »Spring Cloud Bus »Spring Cloud Cluster »Spring Cloud Consul »Spring Cloud Security »Spring Cloud Sleuth 57 »Spring Cloud Data Flow »Spring Cloud Stream »Spring Cloud Task »Spring Cloud Zookeeper »Spring Cloud for AWS »Spring Cloud Connectors »Spring Cloud Contract
59.
マイクロサービス化にむけて 明日からでも取り組むべき • サービスの分割は、いまからでもできる »今できないものが未来になってできることはない »技術の制約を超えるには「不整合の受入れ」が必要 • 現時点をマイクロサービス
LV1だと捉える »大規模サービス+共有データ+ETLからのスタートでよい »どこを切り出していけばいいのかを考える 58
60.
マイクロサービス化にむけて マイクロサービス化成熟レベル 59 Level 名称 状況 1
ほぼモノリシック 数個の大規模サービスが共有データ/ETL連携 2 マイクロサービスの初期段階 複数のサービス群がAPI連携 部分的なプラットフォーム提供 3 マイクロサービス プラットフォームの整備 CI/CD+インフラ自動化 インテリジェントなルーティング処理 4 高度なマイクロサービス 高度なサービスやインフラの管理 イベントソーシング ストリーム処理 5 先進的マイクロサービス マイクロサービスに関する技術開発やOSSの提供
61.
マイクロサービス化設計入門 2017/5/31 鈴木雄介 グロースエクスパートナーズ株式会社 執行役員 日本Javaユーザーグループ 会長 AWS
Dev Day Tokyo 2017
Download