第1页
Micro Service and Continuous Delivery
郭峰 @ DaoCloud
第2页
Let’s
 Imagine
 that
 you
 are
 build
 an
 online
 store
 
 
Order
  Payment
 
Customer
  Dashboard
 
Item
 
Report
 
Cart
 
Recommend
 
Comments
 
Supply
 
Monitoring
 
第3页
Intimidate Developers
第4页
Obstacle to Frequent Development
• Need to redeploy everything for a new feature
• Interrupts long running background jobs
 • Increasing risk of failure
 • Updates will happen less often – really long
QA cycles
第5页
Overloads Your IDE and Container
Slow down the loop
第6页
Require long-term commitment to a tech stack
第8页
Smaller, simpler apps
• Easy to understand and develop
 • Less dependences
 • Faster to build and deploy
 • Even, Failure faster
第9页
Best Technology for Each Service
第11页
There are Drawbacks
Complexities on
第12页
Automation is Implicit
第13页
Continuous Integration
第14页
Continuous Integration to  Continuous Delivery
第15页
Continuous Delivery ?  Continuous Diverse!
第16页
That’s All?
I’m
 handing
 >ckets
 for
 running
 apps!
 
• Node.js
  • Python
  • Ruby
  • Golang
  • Java
  • PHP
  • …
 
第17页
Duang, Duang…
“Works
 for
 me”
  “Can’t
 you
 reproduce”
  “Upgrade
 to
 1.2.5-‐xx”
  “I
 would
 appreciate
 if
 you
 could
 test
 b/w
 3
 and
 4
  am”
  “So
 to
 trigger
 the
 bug
 you
 have
 to
 install
 X
 and
 Y
  then
 configure
 A,
 B
 and
 C,
 then
 download
 the
  extra
 file,
 put
 it
 in
 this
 directory.
 
第18页
How Docker Helps
第19页
Docker & Micro Service
üüü
Develop
 simplest
 possible
 solu>on
 
  Configura>on
 is
 a
 run>me
 constraint
 
  Not
 extra-‐extra-‐complex
 applica>on
 
new
 WebServer().start(8080);
 
Dev
Ops
üüü
Manage
 hardware
 /
 infrastructure
 
  Monitoring
 /
 backups
  
  Not
 apps
 implementa>on
 details
 
 
第20页
Unified Integration
第21页
Reproducible Delivery
第22页
Dockerized Apps
第23页
The Landscape with Containers
第24页
Q&A