There are a number of great resources out there for learning about microservice architecture, many of which helped to shape this book. This appendix collects and classifies the authors’ favorites.
These materials are the best place to start learning about microservices and microservice architecture:
Lewis, James, and Martin Fowler. “Microservices: A Definition of This New Architectural Term”, March 25, 2014.
Miller, Matt. “Innovate or Die: The Rise of Microservices”. The Wall Street Journal, October 5, 2015.
Newman, Sam. Building Microservices. O’Reilly Media, 2015.
These resources provide guidance on what to do—and what not to do—when it comes to implementing a microservice architecture:
Alagarasan, Vijay. “Seven Microservices Anti-patterns”, August 24, 2015.
Cockcroft, Adrian. “State of the Art in Microservices”, December 4, 2014.
Fowler, Martin. “Microservice Prerequisites”, August 28, 2014.
Fowler, Martin. “Microservice Tradeoffs”, July 1, 2015.
Humble, Jez. “Four Principles of Low-Risk Software Release”, February 16, 2012.
Humble, Jez, Chris Read, and Dan North. “The Deployment Production Line”. In Proceedings of the conference on AGILE 2006, 113–118. IEEE Computer Society.
Kniberg, Henrik, and Anders Ivarsson. “Scaling Agile at Spotify”, October 2012.
Vasters, Clemens. “Sagas”, September 1, 2012.
Wootton, Benjamin. “Microservices are Not a Free Lunch”, April 8, 2014.
The following articles include overviews and insight from real-life microservice implementations:
Gilt
Netflix
SoundCloud
The last set of resources includes the historical foundations for microservice architecture:
Arthur, W. Brian. The Nature of Technology. Simon & Schuster, 2009.
Brooks, Fred. “No Silver Bullet”. Reproduced from The Mythical Man-Month, Anniversary edition, Addison-Wesley, 1995.
Conway, Mel. “Conway’s Law”, accessed May 25, 2016.
Evans, Eric. Domain-Driven Design: Tackling Complexity in the Heart of Software. Prentice-Hall, 2003.
Fielding, Roy. “Architectural Styles and the Design of Network-based Software Architectures”. PhD diss., University of California, Irvine, 2000.
Feldman, Stuart. “A Conversation with Alan Kay”. Queue 2(2004): 20–30.
Mintzberg, Henry. Structure in Fives: Designing Effective Organizations. Pearson, 1992.
Morgan, Gareth. Images of Organization. SAGE Publishing, 2007.
Parnas, David. “On the Criteria to Be Used in Decomposing Systems Into Modules”. Communications of the ACM 15(1972): 1053–1058.
Poppendieck, Mary. “The New New Software Development Game”, Craft Conference video, April 2015.
Ries, Eric. The Lean Startup. Crown Business, 2011.