Skip to content

kotavi/microservices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Microservices - Fundamentals

See course https://www.coursera.org/learn/intro-ibm-microservices/

A microservice is an engineering approach focused on decomposing applications into single-function modules with well-defined interfaces which are independently deployed and operated by small teams who own the entire lifecycle of the service.

Microservices accelerate delivery by minimizing communication and coordination between people while reducing the scope and risk of change

See Intro to Microservices

Main keywords:

  • decomposing
  • single-function
  • well-defined interfaces
  • independent
  • small teams
  • entire lifecycle
  • minimizing communication
  • reducing the scope of change

Blue-Green Deployment

Microservice Communication

API Gateway

The Service Registry

Challenges of Microservices

Microservice prerequisites

  • How can I find a service that I need?
    • What if a service moves? Which instance do I use if there are multiple instances?
  • Is that service up and running?
    • What do I do if it's not running?
  • How can I scale my services?
    • How do I spread my load over multiple instances?
  • How can I introduce new versions of services without impacting existing users?
  • How can I test against failures?
    • How does the failure of one service affect other instances of the same service?
    • How does the failure of one service affect other related services?
  • How can I protect against a catastrophic failure?
    • How do I prevent the failure of one service taking everything down?

The more pieces running independently, the more the network becomes an issue with latency and disconnects.

In the microservices environment failures will happen, hardware errors are just one example. So fault tolerance is needed to recover and carry on. Given the independent services that interact, data placement and interfaces have to be carefully planned. Add to the possibility of failure that you could corrupt data. These are important considerations while designing and using microservices architecture.

DevOps

Useful links

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published