What Are They?



What Are They?

1 0


microservice-talk

Colorado Springs JS Meetup

On Github zanedeg / microservice-talk

Microservices

Zane DeGraffenried

Colorado Springs JS - Jan 27, 2016

What Are They?

Monolith

  • Difficult to upgrade
  • Wide System Knowledge Required
  • Shared DB

Service Oriented Architecture

  • Easier to upgrade
  • Lack of constraints can create monolithic services
  • Shared DB

Small Interconnected Services

Independent Processes

Private Data Store

“small enough and no smaller”- Sam Newman

Immutable Infrastructure

We deployed 11,000 times in 2015.

— John Sheehan (@johnsheehan) January 4, 2016

Consuming your Application as a whole

Modular Middleware

  • Authentication
  • Error Handling

Unified & Intelligent Endpoints

/v1/account/1/
/v1/account/1/location/56/
/v1/account/1/location/56/fixture/42/
/v1/account/1/location/56/usage/
/v1/account/1/billing/
                            

Lessons we have learned

Document Everything Everywhere

Health Checks

Infrastructure Management must be Automated

Plan for Failure

Resources

Routing & Load Balancing

Service Discovery

Network Monitoring

Infrastructure Management

Questions?

Further Reading

Microservices

Service Discovery/Routing

Infrastructure

Microservices Zane DeGraffenried Colorado Springs JS - Jan 27, 2016