Choose your language:

France
Germany
Hong Kong
India
Ireland
Japan
Malaysia
Netherlands
New Zealand
Singapore
Sweden
United Kingdom
United States

Technical Introduction to Microservices

Course Code

IN1547

Duration

2 Days

Foundational knowledge of programming and software design principles

This training course will help participants understand the value proposition and technical aspects of Microservices, a new and rather fuzzy concept used to describe rapidly provisionable, independently deployable services with narrow and distinct functionality. Upon completion of this training course, participants will have fundamental understanding of Microservices and practical experience in implementing Microservices using different technology stacks. This training course is supplemented by hands-on labs that help attendees reinforce their theoretical knowledge of the learned material.

This course is designed for IT Architects, Software Designers, and Developers.

Upon completion of this course, participants will be able to:

  • Implement Microservices using different technology stacks
CHAPTER 1. MICROSERVICES
What is a “Microservice?”
SOA - Microservices Relationship
ESB - Microservices Relationship
One Helpful Analogy
The Driving Forces Behind Microservices
How Can Microservices Help You?
The Microservices Architecture
Utility Microservices at AWS
Microservices Inter-connectivity
The Data Exchange Interoperability Consideration
Microservices Coordination
Implementing Microservices
Microservice-Oriented Application Frameworks and Platforms
Summary

CHAPTER 2. DOCKER INTRODUCTION
What is Docker
Where Can I Ran Docker?
Docker and Containerization on Linux
Linux Kernel Features: cgroups and namespaces
The Docker-Linux Kernel Interfaces
Docker Containers vs Traditional Virtualization
Docker as Platform-as-a-Service
Docker Integration
Docker Services
Docker Application Container Public Repository
Competing Systems
Docker Command-line
Starting, Inspecting, and Stopping Docker Containers
Summary

CHAPTER 3. MICROSERVICES WITH NODE.JS.ODT
What is Node.js?
Node's Value Proposition
Example of a Node.js App: a Simple Web Server
Node.js Project Types
Core Modules
Why Node.js uses JavaScript?
The Traditional Concurrency Support Model
Disadvantages of the Traditional Approach
Event-Driven, Non-Blocking I/O
Using Node Package Manager (NPM)
NPM Registry (Repository)
NPM Enterprise
Dependency Management Using NPM
Package Life-Cycle Management
The Express Package
Defining Routing Rules
Route Path
The Response Object
A Simple Web Service with Express
Summary

CHAPTER 4. REST SERVICES
Many Flavors of Services
Understanding REST
Principles of RESTful Services
REST Resource Examples
SOAP Equivalent Examples
REST vs SOAP Communication
More REST vs SOAP
REST vs SOAP Summary
Famous RESTful Services
Additional Resources
Summary

CHAPTER 5. INTRODUCTION TO JAX-RS
The JAX-RS Specification
The Resource Class
A Bunch of Annotations
@Path
Using Path Parameters
HTTP Method Binding
More Complex Paths
Configuring JAX-RS for Deployment
Summary

CHAPTER 6. API MANAGEMENT
Drivers towards Business Inter-connectivity
View of the NetBeans IDE Web Services Facet
Facebook Graph API Explorer
APIs Proliferation
API Management Defined
API Management Disclaimers
The Traditional Point-to-point Integration Example
It Raises Some Questions …
API Management Conceptual Diagram
What Else is Needed?
Driving Forces
Gartner Research Stats
API Management Offerings
The Mashery API Management System Overview
WSO2 API Management Main Components
Summary

CHAPTER 7. INTRODUCTION TO SPRING BOOT
What is Spring Boot?
Spring Boot Features
Spring Boot vs DropWizard
Spring Boot on the Cloud Foundry PaaS
Spring Boot Command Line
Understanding Spring MVC and REST Annotations
Hello Spring Boot RESTful Web Service
Converting a Spring Boot Application to a WAR
Summary

CHAPTER 8. APACHE ZOOKEEPER
What is Apache Zookeeper?
Apache Zookeeper Logo
Who Uses Apache Zookeeper?
Zookeeper Design Goals
Data Model and the Hierarchical Namespace
Use Cases
Zookeeper Quality of Service
Zookeeper Service Ensemble
Zookeeper Shell Command-line
ZooKeeper Java API
Summary

CHAPTER 9. DEFINING THE CLOUD
A Bit of History
Wikipedia Entry
Cloud Computing at a Glance
Gartner Research on Cloud
Electrical Power Grid Service Analogy
The NIST Perspective
Five Characteristics
On-demand Self-Service (NIST Characteristic)
Broad Network Access (NIST Characteristic)
Resource Pooling (NIST Characteristic)
Rapid Elasticity (NIST Characteristic)
Measured Service (NIST Characteristic)
The Three Cloud Service Models (NIST)
The Cloud Computing Spectrum: IaaS, PaaS and SaaS
The Four Cloud Deployment Models (NIST)
The NIST Cloud Definition Framework
A Hybrid Cloud Diagram
Cloud Deployment Model Dynamics
Summary

CHAPTER 10. CLOUD SERVICES
Defining Cloud Services
User-Cloud Interaction
Cloud Service Characteristics
The Typical Cloud Services
Application Services
Messaging Application Service
Email Application Service
Cache Application Service
Specialized Application Services
AWS Analytics Systems
Google App Engine (GAE) MapReduce Service
Use Cases for MapReduce Jobs
Integration Platform as a Service (IPaaS)
Storage Services
Object Storage
Archive Storage
Relational Storage
NoSQL Storage
Some AWS Storage Services
Data Warehouses in the Cloud
Cloud Utility Services
Scalability and HA of Your Applications in the Cloud
The Auto-scaling Service
Monitoring Services
Configuring Instance Health Check in AWS
Amazon Web Services Integration Diagram
Google App Engine (GAE) Services Integration Diagram
Microsoft Azure Services
Comparing Cloud Service Stacks
Summary
Send Us a Message
Choose one