Microservices from Day One: Build Robust and Scalable Software from the Start

  • 5h 25m
  • Cloves Carneiro Jr., Tim Schmelmer
  • Apress
  • 2016

Learn what a microservices architecture is, its advantages, and why you should consider using one when starting a new application. The book describes how taking a microservices approach from the start helps avoid the complexity and expense of moving to a service-oriented approach after applications reach a critical code base size or traffic load.

Microservices from Day One discusses many of the decisions you face when adopting a service-oriented approach and defines a set of rules to follow for easily adopting microservices. The book provides simple guidelines and tips for dividing a problem domain into services. It also describes best practices for documenting and generating APIs and client libraries, testing applications with service dependencies, optimizing services for client performance, and much more. Throughout the book, you will follow the development of a sample project to see how to apply the best practices described.

What You Will Learn:

  • Apply guidelines and best practices for developing projects that use microservices
  • Define a practical microservices architecture at the beginning of a project that allows for fast development
  • Define and build APIs based on real-world best practices
  • Build services that easily scale by using tools available in most programming languages
  • Test applications in a distributed environment

Who This Book is For:

Software engineers and web developers who have heard about microservices, and want to either move the project/applications they work on to a service-oriented environment, or want to start a new project knowing that building services helps with ease of scaling and maintainability. The book is a reference for developers who have a desire to build software in smaller, more focused and manageable chunks, but do not know how to get started.

About the Authors

Cloves Carneiro Jr has been writing software since 1997. His career in tech has been separated into two parts: Java and Ruby. In his early days as a software developer, Cloves built web applications for large telecommunication companies, such as Manitoba Telecommunications(MTS), AMCTV, We.tv, News12, and SportSkool using Java frameworks, including Struts, Webwork and Spring. He has moved to the Ruby camp since 2006, and has enjoyed working full-time with Ruby/Rails, he has worked as a consultant, and as an employee for Unspace and Amazon. Cloves wrote a couple of Ruby on Rails books, 'Beginning Rails' and 'Beginning Rails 3' for Apress. He is currently based in South Florida, and works as a Software Engineer for LivingSocial.

After abandoning his childhood dream of becoming an actual firefighter, Tim Schmelmer did the next best thing and became a software developer. He has spent the past 18 years extinguishing fires while working for technology consulting companies, telecommunications equipment manufacturers, building control systems for research telescopes, and selling things to people via a Web browser and mobile apps. Tim found his love for Ruby while building microservices systems at Amazon, and he is currently working on a team that does surprisingly little firefighting while building and maintaining LivingSocial's core services platform.

In this Book

  • Microservices: The What and the Why
  • Rules of Engagement
  • Partitioning Your Business into Services
  • Designing Your APIs
  • Defining APIs
  • Consuming Your APIs
  • Optimizing Your APIs
  • Development Environment and Workflow
  • Testing with Services
  • Deploying and Running Microservices
  • Polyglot Services
  • Single-Client Application—Mobile and Web
  • Monitoring Your Services
  • Operational Excellence with Microservices


Rating 4.5 of 204 users Rating 4.5 of 204 users (204)
Rating 4.6 of 75 users Rating 4.6 of 75 users (75)