第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