SlideShare une entreprise Scribd logo
1  sur  54
Télécharger pour lire hors ligne
マイクロサービスで、

⼀一歩先⾏行くImmutable
Infrastructureを⽬目指そう
JTF2015 : July Tech Festa
しょっさん
妻1娘4。外資インフラ
系ITアーキテクト/ITコ
ンサルタント/初級アク
アリスト。深⽥田恭⼦子殿
堂⼊入り。Perfume-‑かし
ゆか派/BABYMETAL。
座右の銘:⼈人⽣生即是遊戯。
0x29歳。
Todays Theme
Service Oriented Architecture
‘
Immutable
Infrastructure
‒–Chad Fowler (2013.06.23 6:57 pm)
“Trash Your Servers and Burn Your Code:
Immutable Infrastructure and Disposable
Components”
http://chadfowler.com/blog/2013/06/23/immutable-deployments/
BlueGreenDeployment
Martin Fowler
1 March 2010
http://martinfowler.com/bliki/BlueGreenDeployment.html
BlueGreenDeployment
Martin Fowler
1 March 2010
http://martinfowler.com/bliki/BlueGreenDeployment.html
Issues
Issues
Stateless and Stateful Servers
Issues
Complex System
Issues
Complex System
Microservices
‒–James Lewis (25 March 2014)
“Microservices”
http://martinfowler.com/articles/microservices.html
Characteristics of a
Microservice Architecture
• Componentization
via Services
• Organized around
Business
Capabilities
• Products not
Projects
• Smart endpoints
and dumb pipes
• Decentralized
Governance
• Decentralized Data
Management
• Infrastructure
Automation
• Design for failure
• Evolutionary
Design
Characteristics of a
Microservice Architecture
• Componentization
via Services
• Organized around
Business
Capabilities
• Products not
Projects
• Smart endpoints
and dumb pipes
• Decentralized
Governance
• Decentralized Data
Management
• Infrastructure
Automation
• Design for failure
• Evolutionary
Design
Componentization
役割分担とインタフェイスの明確化

活性保守の仕組み作り
Componentization
特定のサービス毎に Deploy
Microservicesを

始めてみよう!
どうやって…⋯
ボクたちにはSOAがある
Web Services
Service Oriented
Architecture
Application

Front-end
Service
Service

Repository
Service bus
SOA
Contract Implementation Interface
Business logic Data
Application Front-‑end
エンドユーザとの対話
バッチなどからコールされるプロセス
Service
• 規約(contract)
• ⽬目的、機能、制約、利⽤用法などの仕様
• 仕様は⾔言語に基づかなくてもいい
• インタフェース
• 実装(Implementation)
• ビジネスロジック
• データ
Service Repository
公開されているサービスの情報を集約
Service BUS
接続性・技術・通信概念の混在
技術的なサービス
SOAの⽬目的
• システムとソフトウェアアーキテクチャの分離
• 疎結合 : お互いに無関係に設計可能
Microservices vs SOA
• SOA
• 集中統治
• 集中→分散管理
• ⼤大企業むけ
• トップダウン

• Microservices
• 分散統治
• 分散管理
• 中⼩小企業向け
• ボトムアップ
実現していくには…⋯
SOA ロードマップ
1. 基礎段階 : 保守性の向上
2. ネットワーク化段階 : 柔軟性の向上
3. プロセス制御段階 : 俊敏性の向上
基礎段階
2層とデータ共有
エンタープライズ層
基本層
ECサイト
販売 会員管理 在庫管理 受注管理
発注アプリ
Application
Front-‑end
Services
ネットワーク化段階
中継層
カプセル化
エンタープライズ層
基本層
ECサイト
販売 会員管理 在庫管理 受注管理
在庫&受注

(2PC)
技術的なカプセル化
複雑なロジックの集約
Service bus
中継層
テクノロジ
ゲートウェイ
エンタープライズ層
基本層
ECサイト
販売
EJB
Gateway
配送

システム
B2B

ポータル
.Net
Gateway
MQ
Gateway
Service bus
中継層
付加機能サービス(3例)
エンタープライズ層
基本層
新Client
レガシー

アプリ
データ拡張
新機能が必
要なClient
レガシー
Client
新機能追加 新機能追加
追加属性
パッケージ
ソフト
新Client
レガシー
アプリ
中継層
データの拡張
エンタープライズ層
基本層
新Client
レガシー

アプリ
データ拡張
新機能が必
要なClient
レガシー
Client
新機能追加 新機能追加
追加属性
パッケージ
ソフト
新Client
レガシー
アプリ
引き継いだモデルを変更せず、
レガシーアプリケーションの
データモデルを拡張
中継層
パッケージに
新機能追加
エンタープライズ層
基本層
新Client
レガシー

アプリ
データ拡張
新機能が必
要なClient
レガシー
Client
新機能追加 新機能追加
追加属性
パッケージ
ソフト
新Client
レガシー
アプリ
パッケージに対して
新たな機能を追加
中継サービスで、
パッケージソフトを
ラッピング
中継層
既存の維持と新機能
エンタープライズ層
基本層
新Client
レガシー

アプリ
データ拡張
新機能が必
要なClient
レガシー
Client
新機能追加 新機能追加
追加属性
パッケージ
ソフト
新Client
レガシー
アプリ
既存のプロトコロルを維持
新たなクライアント機能を追加
プロセス制御段階
中継層
プロセスのカプセル化
エンタープライズ層
基本層
ECサイト
販売 会員管理 在庫管理 受注管理
在庫&受注

(2PC)
プロセス層
予約
プロセス
プロセス層
単純化
エンタープライズ層
基本層
ECサイト
販売 会員管理 在庫管理 受注管理
予約
プロセス
中継層
中継層の考え⽅方
在庫&受注

(2PC)
プロセス層
オンライン
プロセス
B2B
プロセス
モバイル
プロセス
共通
プロセス
オンライン
プロセス
B2B
プロセス
モバイル
プロセス
プロセス層
複数のプロセスが

利⽤用する場合
プロセスの中⼼心化
1
2
プロセス層
プロセス中⼼心化
エンタープライズ層
基本層
ECサイト
(チケット)
メール 予約
キャンセル
待ち
予約
プロセス
キャンセル
プロセス
プロセスの
状態保持
プロセスの
状態保持
summary
サービス化:疎結合
↓
影響の極⼩小化
適合可能な技術の選択
新しいものと
古いものを
組み合わせる
⾞車輪の再発明は
しない
再利⽤用しよう
Re-‑usable not Re-‑cycle
流⾏行に流されない
もっと知りたい⼈人は
SOA⼤大全
サービス指向アーキテクチャ
導⼊入・設計・構築の指針 http://amzn.to/1Lmtq4V
ありがとう
このスライドで利⽤用している⼀一部の写真は、ぱくたその写真素材を利⽤用しています。
この写真を継続して利⽤用する場合は、ぱくたそ公式サイトからご⾃自⾝身でダウンロードしていただくか、

ぱくたそのご利⽤用規約に同意していただく必要があります。

同意しない場合は写真のご利⽤用はできませんのでご注意ください。
ご清聴
ありがとうございました

Contenu connexe

Similaire à マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう

IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7Kohei MATSUSHITA
 
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~法林浩之
 
IoTとビッグデータについて学ぼう
IoTとビッグデータについて学ぼうIoTとビッグデータについて学ぼう
IoTとビッグデータについて学ぼう法林浩之
 
Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212softlayerjp
 
Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212chenree3
 
インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3Tomoaki Sawada
 
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~法林浩之
 
20190517 twilio business seminar in osaka #3
20190517 twilio business seminar in osaka #320190517 twilio business seminar in osaka #3
20190517 twilio business seminar in osaka #3Ukyo Satake
 
インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408Tomoaki Sawada
 
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデート
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデートデバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデート
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデートDevice WebAPI Consortium
 
IoTあるじゃん北海道支部勉強会#1
IoTあるじゃん北海道支部勉強会#1IoTあるじゃん北海道支部勉強会#1
IoTあるじゃん北海道支部勉強会#1Koyo Takenoshita
 
IoT、貯めるだけではもったいない
IoT、貯めるだけではもったいないIoT、貯めるだけではもったいない
IoT、貯めるだけではもったいないYoshitaka Seo
 
.NET Micro Framework で IoT
.NET Micro Framework で IoT.NET Micro Framework で IoT
.NET Micro Framework で IoTYoshitaka Seo
 
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来Daiyu Hatakeyama
 
Microsoft 365 E5 活用のススメ
Microsoft 365 E5 活用のススメMicrosoft 365 E5 活用のススメ
Microsoft 365 E5 活用のススメ祥子 松山
 
Movable Typeのプラグインでできること
Movable TypeのプラグインでできることMovable Typeのプラグインでできること
Movable TypeのプラグインでできることHajime Fujimoto
 
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015Kohei MATSUSHITA
 
It web 業界研究_1124
It web 業界研究_1124It web 業界研究_1124
It web 業界研究_1124Toshikazu Oka
 
佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合うDaiyu Hatakeyama
 

Similaire à マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう (20)

IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
 
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~
IoT×ビジネス活用 ~最先端技術のビジネス活用に向けて~
 
IoTとビッグデータについて学ぼう
IoTとビッグデータについて学ぼうIoTとビッグデータについて学ぼう
IoTとビッグデータについて学ぼう
 
Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212
 
Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212Lt4 japansoftlayersummit2015 fbi_lt_20150212
Lt4 japansoftlayersummit2015 fbi_lt_20150212
 
インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3
 
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
 
20190517 twilio business seminar in osaka #3
20190517 twilio business seminar in osaka #320190517 twilio business seminar in osaka #3
20190517 twilio business seminar in osaka #3
 
インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408
 
⼤企業で実現するイマドキの内製開発
⼤企業で実現するイマドキの内製開発⼤企業で実現するイマドキの内製開発
⼤企業で実現するイマドキの内製開発
 
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデート
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデートデバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデート
デバイスWebAPIコンソーシアム第一回総会について & OMA GotAPI 標準化作業状況アップデート
 
IoTあるじゃん北海道支部勉強会#1
IoTあるじゃん北海道支部勉強会#1IoTあるじゃん北海道支部勉強会#1
IoTあるじゃん北海道支部勉強会#1
 
IoT、貯めるだけではもったいない
IoT、貯めるだけではもったいないIoT、貯めるだけではもったいない
IoT、貯めるだけではもったいない
 
.NET Micro Framework で IoT
.NET Micro Framework で IoT.NET Micro Framework で IoT
.NET Micro Framework で IoT
 
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
 
Microsoft 365 E5 活用のススメ
Microsoft 365 E5 活用のススメMicrosoft 365 E5 活用のススメ
Microsoft 365 E5 活用のススメ
 
Movable Typeのプラグインでできること
Movable TypeのプラグインでできることMovable Typeのプラグインでできること
Movable Typeのプラグインでできること
 
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015
IoT時代のデータ伝送とインフラに求められている機能 Developers.IO 2015
 
It web 業界研究_1124
It web 業界研究_1124It web 業界研究_1124
It web 業界研究_1124
 
佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う
 

Plus de Takashi Abe

Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Takashi Abe
 
Heroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDHeroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDTakashi Abe
 
わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻Takashi Abe
 
王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイトTakashi Abe
 
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことMicroservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことTakashi Abe
 
暗号化の歴史
暗号化の歴史暗号化の歴史
暗号化の歴史Takashi Abe
 
TCP/IPでネットワークが繋がるわけ「で・ね・と」
TCP/IPでネットワークが繋がるわけ「で・ね・と」TCP/IPでネットワークが繋がるわけ「で・ね・と」
TCP/IPでネットワークが繋がるわけ「で・ね・と」Takashi Abe
 
なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)Takashi Abe
 
qpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだqpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだTakashi Abe
 
お金と技術のCROSS
お金と技術のCROSSお金と技術のCROSS
お金と技術のCROSSTakashi Abe
 
Qpstudy2013.07 devops
Qpstudy2013.07 devopsQpstudy2013.07 devops
Qpstudy2013.07 devopsTakashi Abe
 
Disaster Recovery
Disaster Recovery Disaster Recovery
Disaster Recovery Takashi Abe
 
The Story of CPU
The Story of CPUThe Story of CPU
The Story of CPUTakashi Abe
 
Presentation technic
Presentation technicPresentation technic
Presentation technicTakashi Abe
 
勉強会の系譜
勉強会の系譜勉強会の系譜
勉強会の系譜Takashi Abe
 
秋の夜長のトランスポート
秋の夜長のトランスポート秋の夜長のトランスポート
秋の夜長のトランスポートTakashi Abe
 
ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料Takashi Abe
 
インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編Takashi Abe
 
ストレージ友の会 #01
ストレージ友の会 #01ストレージ友の会 #01
ストレージ友の会 #01Takashi Abe
 
グループディスカッションの巻
グループディスカッションの巻グループディスカッションの巻
グループディスカッションの巻Takashi Abe
 

Plus de Takashi Abe (20)

Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Docker on Heroku のはじめ方
Docker on Heroku のはじめ方
 
Heroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDHeroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CD
 
わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻
 
王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト
 
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことMicroservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
 
暗号化の歴史
暗号化の歴史暗号化の歴史
暗号化の歴史
 
TCP/IPでネットワークが繋がるわけ「で・ね・と」
TCP/IPでネットワークが繋がるわけ「で・ね・と」TCP/IPでネットワークが繋がるわけ「で・ね・と」
TCP/IPでネットワークが繋がるわけ「で・ね・と」
 
なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)
 
qpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだqpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだ
 
お金と技術のCROSS
お金と技術のCROSSお金と技術のCROSS
お金と技術のCROSS
 
Qpstudy2013.07 devops
Qpstudy2013.07 devopsQpstudy2013.07 devops
Qpstudy2013.07 devops
 
Disaster Recovery
Disaster Recovery Disaster Recovery
Disaster Recovery
 
The Story of CPU
The Story of CPUThe Story of CPU
The Story of CPU
 
Presentation technic
Presentation technicPresentation technic
Presentation technic
 
勉強会の系譜
勉強会の系譜勉強会の系譜
勉強会の系譜
 
秋の夜長のトランスポート
秋の夜長のトランスポート秋の夜長のトランスポート
秋の夜長のトランスポート
 
ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料
 
インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編
 
ストレージ友の会 #01
ストレージ友の会 #01ストレージ友の会 #01
ストレージ友の会 #01
 
グループディスカッションの巻
グループディスカッションの巻グループディスカッションの巻
グループディスカッションの巻
 

マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう