microservice-examples
microservice-examples copied to clipboard
a (somewhat curated) collection of microservice examples.
= image:./small-arc42-logo.png[arc42] Microservice Examples :toc: macro
Here you find links to several examples of the https://martinfowler.com/articles/microservices.html[microservice architectural style].
toc::[right, preamble]
== Examples
==== Sock Shop A (quite full-fledged) demo application, including nice UI plus monitoring. Implemented and maintained by Weaveworks.
Their application is https://microservices-demo.github.io/[online] and they have extensively documented their https://github.com/microservices-demo/microservices-demo/blob/master/internal-docs/design.md[architecture]
- https://github.com/microservices-demo/microservices-demo[Sock Shop]
==== http://microservices-book.com/[Eberhard Wolff] Eberhard has implemented several examples. Designed around a fictional eCommerce enterprise, they consist of three microservices: One to process orders, another to handle customer data and a third to handle items in a catalogue.
You find versions for different technologies:
- https://github.com/ewolff/microservice[Netflix Stack]
- https://github.com/ewolff/microservice-kafka[Kafka]
- https://github.com/ewolff/microservice-atom[Atom]
- https://github.com/ewolff/microservice-consul[Consul]
- https://github.com/ewolff/microservice-consul-dns[Consul as DNS server]
- https://github.com/ewolff/microservice-kubernetes[Kubernetes]
- https://github.com/ewolff/microservice-cloudfoundry[Cloudfoundry]
- https://github.com/ewolff/SCS-jQuery[SCS-jQuery]
- https://github.com/ewolff/SCS-ESI[SCS-ESI]
==== [Chris Richardson] Chris is the author of https://microservices.io[].
- https://github.com/cer/event-sourcing-examples[Event Sourcing Example]
==== https://www.manning.com/books/the-tao-of-microservices[Richard Rodger] Richard, author of https://www.manning.com/books/the-tao-of-microservices[The Tao of Microservices] has implemented a search engine for Node.js modules with a microservice architecture. He describes this example in his book, but a basic documentation is provided with the (open source) implementation. Btw: The system is available online at http://nodezoo.com/[nodezoo.com].
From his documentation: [quote, Richard Rodger (Nodezoo.com): From his documentation] Nodezoo is a search engine for Node.js modules. The nodezoo search engine is an example of a real-world service built using Node.js microservices. Each microservice is published in its own github repository along with all of the necessary config to run the system locally or live . The codebase is intended to be used as an example, and as a starting point for your own projects.
- https://github.com/nodezoo[Nodezoo at Github], contains all the examples.
- https://github.com/nodezoo/nodezoo-workshop[Nodezoo Workshop], the entry-point into the actual code.
The last commits in these repositories are somewhat dated - I'm not sure if they are actively maintained.
== Additional resources
==== Article Collections ("reading lists")
-
http://www.mammatustech.com/java-microservices-architecture/microservices-architecture-reading-list[curated reading list] (by Mammatus Inc).
-
https://martinfowler.com/microservices/[Microservice Resource Guide], by Martin Fowler and Thoughtworks.
-
https://github.com/mfornos/awesome-microservices[List of related principles and technologies] by Marc Fornos.
==== Books
-
Eberhard Wolff: http://microservices-book.com/[Microservices: Flexible Software Architectures] / http://microservices-buch.de/[DE]
-
Eberhard Wolff: http://microservices-book.com/primer.html[Free Microservices Primer] / http://microservices-buch.de/ueberblick.html[DE]
-
Chris Richardson: https://www.manning.com/books/microservice-patterns[Microservice Patterns]
-
Sam Newmann: http://samnewman.io/books/building_microservices/[Microservices]
-
Richard Rodger: https://www.manning.com/books/the-tao-of-microservices[The Tao of Microservices], Manning. Centered around the concept of messages that are transmitted between services.
== Contribute
In case you find additional examples, or like to add comments to the existing ones, please open an issue https://github.com/arc42/microservice-examples/issues[issue] or create a https://github.com/arc42/microservice-examples/issues[pull-request].
== License
You're completely free to use these links - but as-is, there's no (as in zero) guarantee that the examples will be working or any linked information is correct. I did my best to check and verify... but that might not be good enough for you...
So - you're left on your own.