Microservices:
Blah, blah, blah...
John Sheehan
Co-founder, CEO
@Runscope
Slide 2
Slide 2 text
No content
Slide 3
Slide 3 text
API
Performance
Monitoring
Slide 4
Slide 4 text
40,000+
developers
use Runscope
Slide 5
Slide 5 text
MICROSERVICES
"Simultaneously existing on all
points in the hype lifecycle."
Slide 6
Slide 6 text
Glue 2014: 0
Glue 2015: 12!
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
No content
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
No content
Slide 12
Slide 12 text
"Microservices is just SOA."
Slide 13
Slide 13 text
Some of what's new in software
development since SOA was cool:
Node.js
DevOps Docker
AWS
GitHub
JSON APIs
NoSQL
Go
Stack Overflow
Hadoop
jQuery CI/CD
Slide 14
Slide 14 text
MICROSERVICES =
SOA 2.0 + DevOps
Slide 15
Slide 15 text
MICROSERVICE ARCHITECTURE (MSA)
A style of service-oriented architecture that
emphasizes decentralization and deliverability.
MICROSERVICE
Self-contained service with single “job to be done”
and exposed via an API. The atomic unit of an MSA.
Slide 16
Slide 16 text
We are
not Netflix
Slide 17
Slide 17 text
MICROSERVICES
at Runscope
Slide 18
Slide 18 text
2 YEARS AGO
3 internal services
5 people shipping code
Slide 19
Slide 19 text
TODAY
60+ internal services
11 people shipping code
Slide 20
Slide 20 text
MICROSERVICES
LESSONS LEARNED
Slide 21
Slide 21 text
Invest in
Infrastructure
MICROSERVICE LESSON LEARNED
Slide 22
Slide 22 text
7,789
Deployments in 2014
50+
Per work day
Slide 23
Slide 23 text
If you don't invest in
INFRASTRUCTURE
don't invest in
MICROSERVICES
Slide 24
Slide 24 text
No content
Slide 25
Slide 25 text
No content
Slide 26
Slide 26 text
No content
Slide 27
Slide 27 text
No content
Slide 28
Slide 28 text
Pick Right Stack
for Each Service
MICROSERVICE LESSON LEARNED
Slide 29
Slide 29 text
Don't Share Datastores
Between Services
MICROSERVICE LESSON LEARNED
Slide 30
Slide 30 text
Embrace the Network!
MICROSERVICE LESSON LEARNED
Slide 31
Slide 31 text
Failure is not
an Exception
MICROSERVICE LESSON LEARNED
Slide 32
Slide 32 text
Isolate
Breakage
MICROSERVICE LESSON LEARNED
Slide 33
Slide 33 text
Pick a Uniform
Interface
MICROSERVICE LESSON LEARNED
Slide 34
Slide 34 text
Build Client Tools
MICROSERVICE LESSON LEARNED
Slide 35
Slide 35 text
• Service discovery
• service://identity/...
• Retry failed GETs
• Run HTTP requests asynchronously
• Log with Runscope Traffic Inspector
Smart Client
Slide 36
Slide 36 text
Make it Easy to
Create New Services
MICROSERVICE LESSON LEARNED
Slide 37
Slide 37 text
Built-in healthcheck/heartbeat endpoints
Automatic, realm-aware service registry
Common logging and metrics framework
Simplified dependency management
Smart Service
Slide 38
Slide 38 text
Test Across Teams
at Service Boundaries
MICROSERVICE LESSON LEARNED
Slide 39
Slide 39 text
Monitor Everything
MICROSERVICE LESSON LEARNED
Slide 40
Slide 40 text
✓ Availability ✓ Performance ✓ Correctness
Any Public or Private API
API Testing & Monitoring