Files
awesome-awesomeness/terminal/microservice
2025-07-18 23:13:11 +02:00

178 lines
27 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
 awesome-microservice
A curated list of Microservice resources
Inspired by the awesome (https://github.com/sindresorhus/awesome) list thing.
Philosophy of Microservice
Origin of Microservice
⟡ Microservices from Martin Fowler (http://martinfowler.com/articles/microservices.html)
⟡ Microservices from Martin Fowler In Chinese (http://blog.csdn.net/wurenhai/article/details/37659335)
Architectural Patterns(similar to book software-architecture-patterns from OREILLY )
Core patterns
⟡ Monolithic architecture from Chris Richardson (http://microservices.io/patterns/monolithic.html)
⟡ Microservices architecture from Chris Richardson (http://microservices.io/patterns/microservices.html)
⟡ API Gateway from Chris Richardson (http://microservices.io/patterns/apigateway.html)
⟡ Bounded Context from Martin Fowler (http://martinfowler.com/bliki/BoundedContext.html)
⟡ Circuit Breaker from Martin Fowler (http://martinfowler.com/bliki/CircuitBreaker.html)
⟡ Circuit Breaker ~ netflix (http://doc.akka.io/docs/akka/snapshot/common/circuitbreaker.html)
Deployment patterns
⟡ Multiple service instances per host (http://microservices.io/patterns/deployment/multiple-services-per-host.html)
⟡ Service instance per host (http://microservices.io/patterns/deployment/single-service-per-host.html)
⟡ Service instance per VM (http://microservices.io/patterns/deployment/service-per-vm.html)
⟡ Service instance per Container (http://microservices.io/patterns/deployment/service-per-container.html)
Service discovery
⟡ Client-side discovery from Chris Richardson (http://microservices.io/patterns/client-side-discovery.html)
⟡ Server-side discovery from Chris Richardson  (http://microservices.io/patterns/apigateway.html)
⟡ Service registry from Chris Richardson (http://microservices.io/patterns/apigateway.html)
⟡ Self registration from Chris Richardson (http://microservices.io/patterns/apigateway.html)
⟡ 3rd party registration from Chris Richardson (http://microservices.io/patterns/apigateway.html)
⟡ Service discovery with consul & etcd (https://aws.amazon.com/blogs/compute/service-discovery-via-consul-with-amazon-ecs/)
Debates between advantage and disvantage
⟡  PaaS vs. IaaS for Microservices Architectures: Top 6 Differences (http://blog.altoros.com/microservices-architectures-paas-vs-iaas-top-6-differences.html)
⟡ PaaS与IaaS 在微服务架构实现方面的6大不同 PaaS vs. IaaS for Microservices Architectures: Top 6 Differences in Chinese (http://weibo.com/p/1001603827173176797988)
⟡  OReilly Software Architecture Conference大会上对微服务架构的探讨总结 (http://radar.oreilly.com/2015/04/4-reasons-why-microservices-resonate.html)
⟡ Microservices Are Not a free lunch! (http://contino.co.uk/microservices-not-a-free-lunch/)
⟡ The Hidden Costs of Microservices by Justin Leitgeb (http://www.stackbuilders.com/news/the-hidden-costs-of-microservices)
Books About Microservice
⟡ Bootstrapping Microservices (https://www.manning.com/books/bootstrapping-microservices-with-docker-kubernetes-and-terraform) by Ashley Davis (https://twitter.com/ashleydavis75).
⟡ Bootstrapping Microservices with Docker, Kubernetes, and Terraform, Second Edition (https://www.manning.com/books/bootstrapping-microservices-with-docker-kubernetes-and-terraform-second-edition) by Ashley Davis 
(https://twitter.com/ashleydavis75).
⟡ Antifragile: Things That Gain from Disorder (http://www.amazon.com/gp/product/0812979680)
⟡ The Black Swan (http://www.amazon.com/The-Black-Swan-Improbable-Robustness/dp/081297381X)
⟡ Implementing Domain-Driven Design (http://www.amazon.co.uk/Implementing-Domain-Driven-Design-Vaughn-Vernon/dp/0321834577)
⟡ Building Micro Services - Sam Newman (http://www.amazon.co.uk/Building-Microservices-Sam-Newman/dp/1491950358)
⟡ Building Micro Services - Sam Newman Downloadable preview edition (http://nginx.com/wp-content/uploads/2015/01/Building_Microservices_Nginx.pdf)
⟡ Antifragile Software - Russ Miles (https://leanpub.com/antifragilesoftware)
⟡ software-architecture-patterns from OREILLY in English** (http://www.oreilly.com/programming/free/files/software-architecture-patterns.pdf)
⟡ software-architecture-patterns from OREILLY in Chinese** (https://raw.githubusercontent.com/bboyfeiyu/android-tech-frontier/master/software-architecture-patterns/%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84%E6%A8%A1%E5%BC%8F.pdf)
⟡ Production Ready Microservices - Susan J. Fowler (http://shop.oreilly.com/product/0636920053675.do)
⟡ Microservices in .NET Core (https://www.manning.com/books/microservices-in-net-core-second-edition)
⟡ Microservices in Production - Susan J. Fowler (free ebook) (http://www.oreilly.com/programming/free/microservices-in-production.csp)
⟡ Microservices with Docker, Flask, and React - Michael Herman (https://testdriven.io/)
⟡ Micro Frontends in Action (https://www.manning.com/books/micro-frontends-in-action)
⟡ Unified Logging with Fluentd (https://www.manning.com/books/unified-logging-with-fluentd)
⟡ Spring Microservices in Action, Second Edition (https://www.manning.com/books/spring-microservices-in-action-second-edition)
⟡ Microservices in .NET, Second Edition (https://www.manning.com/books/microservices-in-net-second-edition)
⟡ Designing Microservices (https://www.manning.com/books/designing-microservices)
⟡ The Tao of Microservices, Second Edition (https://www.manning.com/books/the-tao-of-microservices-second-edition)
Online Videos and Presentations
⟡ Microservices - Martin Fowler (https://www.youtube.com/watch?v=wgdBVIX9ifA)
⟡ State of the Art in Microservices - Adrian Cockcroft (https://www.youtube.com/watch?v=nMTaS07i3jk)
⟡ Deploying And Testing Microservices - Sam Newman (https://www.youtube.com/watch?v=FotoHYyY8Bo)
⟡ Microservices Anti-Patterns (https://www.youtube.com/watch?v=I56HzTKvZKc)
⟡ Practical Considerations For Microservice Architectures - Sam Newman (https://www.youtube.com/watch?v=5NOaUK74Jt4)
⟡ Migrating to Microservices - Adrian Cockcroft (http://www.infoq.com/presentations/migration-cloud-native)
⟡ Microservices at Netflix (https://www.youtube.com/watch?v=LEcdWVfbHvc)
⟡ Microservices: Adaptive Systems for Innovative Organizations (https://www.youtube.com/watch?v=GDVcUM5wbxU)
⟡ Pros and Cons of a MicroServices Architecture talk at AWS ReInvent (http://www.slideshare.net/stonse/pros-and-cons-of-a-microservices-architecture-talk-at-aws-reinvent)
⟡ Chris Richardson: Developing event-driven microservices with event sourcing and CQRS (https://www.youtube.com/watch?v=9XhBPFjD0hw)
⟡ 微服务 在InfoQ上的内容 (http://www.infoq.com/cn/microservice)
⟡ Microservices on InfoQ website (http://www.infoq.com/cn/microservice)
Events
Best Practises from Industry
Articles and Blogs
⟡  service principles from Yelp-A guide to service principles at Yelp for our service oriented architecture (https://github.com/Yelp/service-principles)
⟡ Adopting Microservices at Netflix serial 1: Its Time to Move to a Four-Tier Application Architecture (http://nginx.com/blog/time-to-move-to-a-four-tier-application-architecture/)
⟡ 第一部分是时候转移到四层架构上来了/ (https://github.com/wanghaisheng/wanghaisheng.github.io/issues/65)
⟡  Adopting Microservices at Netflix serial 2: Adopting Microservices at Netflix: Lessons for Architectural Design (http://nginx.com/blog/microservices-at-netflix-architectural-best-practices/)
⟡ 第二部分微服务架构在Netflix的应用架构设计的经验教训 (https://github.com/wanghaisheng/wanghaisheng.github.io/issues/65)
⟡ Adopting Microservices at Netflix serial 3: Adopting Microservices at Netflix: Lessons for Team and Process Design  (http://nginx.com/blog/adopting-microservices-at-netflix-lessons-for-team-and-process-design/)
⟡ 第三部分微服务架构在Netflix的应用团队和流程设计相关的经验教训 ()
⟡ Microservices - A Reality Check(point)by Andrew Harmel-Law — on Development, Microservices, Java, Camel, NetflixOSS, Spring 17 Oct 2014 (http://capgemini.github.io/architecture/microservices-reality-check/)
⟡  Idempotency is not a Medical Condition - Pat Helland (http://queue.acm.org/detail.cfm?id=2187821)
⟡  Martin Fowler - You Must Be This Tall To Use Microservices (http://martinfowler.com/bliki/MicroservicePrerequisites.html)
⟡  Adrian Cockroft - Migrating to Microservices (http://qconlondon.com/dl/qcon-london-2014/slides/AdrianCockcroft_MigratingToMicroservices.pdf)
⟡  Michael Nygaard - Stability Patterns, and Ant-Patterns… (http://www.slideshare.net/justindorfman/stability-patterns-presentation)
⟡  Eric Evans - Domain Driven Design: Tackling Complexity in the Heart of Software (http://www.amazon.co.uk/Domain-driven-Design-Tackling-Complexity-Software/dp/0321125215)
⟡  Uncle Bob - Microservices and Jars (http://blog.cleancoder.com/uncle-bob/2014/09/19/MicroServicesAndJars.html)
⟡  Steve Jones - Microservices - Money for old rope or re-badging SOA for the cool kids (http://service-architecture.blogspot.co.uk/2014/03/microservices-money-for-old-rope-or-re.html)
⟡  Sonu K. Meena - How to build microservice? (https://www.linkedin.com/pulse/how-build-microservice-sonu-meena)
 Introduction to Microservices (http://nginx.com/blog/introduction-to-microservices/)
 微服务实战微服务架构的优势与不足 (http://dockone.io/article/394)
 Building Microservices: Using an API Gateway  (http://nginx.com/blog/building-microservices-using-an-api-gateway/)
 微服务实战使用API Gateway (http://dockone.io/article/482)
⟡  Building Microservices: Inter-Process Communication in a Microservices Architecture (https://www.nginx.com/blog/building-microservices-inter-process-communication/)
⟡  微服务实战深入微服务架构的进程间通信 (http://dockone.io/article/549)
 微服务实战服务发现的可行方案以及实践案例 (http://dockone.io/article/771)
 Service Discovery in a Microservices Architecture  (https://www.nginx.com/blog/service-discovery-in-a-microservices-architecture/)
 Event-Driven Data Management for Microservices (https://www.nginx.com/blog/event-driven-data-management-microservices/)
 微服务实践微服务的事件驱动数据管理 (http://dockone.io/article/936)
 0 to Microservice in 5 minutes with Go, go-microservice-template and Minke (http://nicholasjackson.github.io/microservices/go/building-and-testing-microservices-part1/)
 5分钟学习基于Gogo-microservice-templateMinke的微服务 (http://dockone.io/article/1117)
 IS REST BEST IN A MICROSERVICES ARCHITECTURE? (http://capgemini.github.io/architecture/is-rest-best-microservices/)
 REST真的完全适合微服务架构吗 (http://dockone.io/article/952)
  Microservice架构模式简介  (http://www.cnblogs.com/loveis715/p/4644266.html)
 单元化与分布式架构的切分问题 (http://timyang.net/architecture/cell-distributed-system/)
  一个单元化架构的例子 (http://mp.weixin.qq.com/s?__biz=MzI5MDE1NjkyNw==&mid=409213079&idx=1&sn=55326805b08b84d86c4e02bc405d0bbe&scene=2&srcid=041143B6BQTKvXlHVsDGbN1V&from=timeline&isappinstalled=0#wechat_redirect)
  Microservice微服务架构两年来在京东咚咚从理论到落地的实践总结 (http://mp.weixin.qq.com/s?__biz=MzAxMTEyOTQ5OQ==&mid=2650610530&idx=1&sn=acd24986fe42181fcd81496f7a922f33&scene=0#wechat_redirect)
⟡ Richard Rodger - Learn the Theory behind Microservice-Based Systems by Using Them in Practice (https://freecontent.manning.com/learn-the-theory-behind-microservice-based-systems-by-using-them-in-practice/)
Example Projects
⟡ Chris Richardson has published the example code for his QCONSF talk on building event-driven microservices. The example microservices-based application is built using event sourcing and command query responsibility separation (CQRS). There are 
currently two versions of the application - Scala/Spring and Java/Spring - with others to follow. Take a look! (https://github.com/cer/event-sourcing-examples)
⟡ Building Microservices with Open Source Technologies by Suresh Balla (http://www.developer.com/open/building-microservices-with-open-source-technologies.html)
⟡ 如何做实时监控—— 参考 Spring Boot 实现 (http://www.juvenxu.com/2014/12/09/real-time-monitoring-with-spring-boot/)
⟡  深入学习微框架Spring Boot  (http://www.infoq.com/cn/articles/microframeworks1-spring-boot)
⟡ NetflixOSS Acme Air Sample and Benchmark (https://github.com/aspyker/acmeair-netflix/tree/astyanax)
⟡  Experiments With Docker For Acme Air Dev (http://ispyker.blogspot.tw/2014/01/experiments-with-docker-for-acme-air-dev.html)
⟡ CRUD using Spring Data Rest and AngularJS using Spring Boot (http://www.programming-free.com/2014/07/spring-data-rest-with-angularjs-crud.html)
⟡  microservice of convert html to pdf (https://github.com/shouldbee/docker-html2pdf)
⟡  Microservices tests with RabbitMQ and Docker (https://github.com/codescrum/microservice-tests-01)
⟡  A demonstration of a Microservices architecture using Spring Boot, Docker and Fig. (https://github.com/boonen/microservices-demo)
⟡  Experiments with microservices and Docker (https://github.com/mboeh/oignon-exp)
⟡  Example code for my building and deploying microservices with event sourcing, CQRS and Docker presentation (https://github.com/cer/event-sourcing-examples)
⟡  Some idea of how micro-services can be handled using SkyDNS, SkyDock and Docker (https://github.com/criolit/docker-microservices)
⟡  This is a presentation on Docker held at FINN Architecture Summit - Service Orientation on 2015.01.21. (https://github.com/finn-no/Docker-and-Microservices)
⟡  Dummy project to try out new tools for me like Docker and RabbitMQ (https://github.com/jordi-chacon/dummy-dockerized-microservices)
⟡  OAuth2 authentication server designed to work in a docker-based microservices architecture. (https://github.com/nielskrijger/auth-server)
⟡  Example on how to scale microservices with message queues, Kubernetes and Spring Boot (https://learnk8s.io/blog/scaling-spring-boot-microservices)
⟡ Production ready multi-tenant microservices. Business microservice can be built on top of it. (https://github.com/mmahmoodictbd/production-ready-microservices-starter)
Library and Tools
People
⟡ James Lewis
⟡ Sam Newman
⟡ Russ Miles
⟡ Martin Fowler
⟡ Chris Richardson
⟡ Daniel Woods
Discussion Group
⟡ Join the microservices google group (https://groups.google.com/forum/#!forum/microservices)
Many thanks to Owain Lewis (https://github.com/owainlewis/microservice-design)
and Chris Richardson (http://microservices.io/index.html) i5ting (https://github.com/i5ting)
microservice Github: https://github.com/wanghaisheng/awesome-microservice