RSEG 167

Microservices Architecture and Development

Microservices provide a proven architecture for building service-oriented enterprise applications of any scale. Microservices architecture enables development of complex software applications by decomposing them into smaller services that work together to form larger business services. Microservices are independent of each other, self-contained, and independently deployable.
The Architecture part of the course will examine a technology-agnostic microservice capability model that addresses monitoring, managing, distributing, scaling, and discovery of microservices. The Development part of the course will focus on implementing responsive microservices at scale. This part of the course will use the latest proven frameworks and products to build scalable microservices: Spring Boot, Spring Cloud, Docker, Mesos, and Marathon.
At the end of the course, students will be able to:
• Build REST- based and message-based microservices using the Spring framework.
• Deploy autonomous services in a serverless mode using Spring Boot.
• Scale microservices with Spring Cloud.
• Containerize microservices with Docker.
• Manage Dockerized microservices with Mesos and Marathon.
• Develop logging and monitoring aspects of microservices.