Home - Zloy/microservice-base GitHub Wiki

My microservices wiki

This contains my experiments and thoughts of microservices

What to consider when I build a microservice?

Here are the list of aspects from scratch

Architecture

  • Microservice description (purpose, performance requirements, etc.)
  • Web framework
  • Horizontal scalability approach
  • Service autodiscovery
  • Frontend architecture
  • Backend architecture
  • Logs collection, parsing, storing, visualizing

Development

  • Test framework, fake data, mocking
  • Versioning API
  • SQL DB, ORM and migrations
  • Logging on frontend and backend, X-Request-Id
  • Queue interface
  • Background jobs
  • REST client
  • Caching
  • Code coverage metrics
  • Linters
  • Autogenerated developer documentation
  • API documenting

Deployment

  • Host provisioning
  • CI/CD
  • Zero downtime deployment
  • Canary testing

Maintenance

  • Monitoring availability, performance, exceptions, metrics
  • Fault tolerance
  • Scaling
  • Config management
  • backups

See also microservices related resources list