AccountIcon BigDataIcon BlogIcon default_resource_icon CartIcon checkmark_icon cloud_devops_icon computer_network_admin_icon cyber_security_icon gsa_schedule_icon human_resources_icon location_icon phone_icon plus_icon programming_software_icon project_management_icon redhat_linux_icon search_icon sonography_icon sql_database_icon webinar_icon

Search UMBC Training Centers

Cloud Computing & DevOps

Technical Introduction to Microservices

+ View more dates & times
  • Overview
    This training course will help you 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, students 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.
    Over the duration of this class, students will cover:
    •     Microservices
    •     Docker
    •     RESTful Web Services
    •     Node.js
    •     Spring Boot
    •     AWS Beanstalk
    •     Apache Zookeeper
  • Who Should Take This Course

    AUDIENCE

    IT Architects, Software Designers, and Developers.

    PREREQUISITES

    Foundational knowledge of programming and software design principles.

  • Schedule
  • Course Outline

    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
    • Managing Microservices
    • Implementing Microservices
    • Embedding Databases in Java
    • Microservice-Oriented Application Frameworks and Platforms
    • Summary

    CHAPTER 2. MICROSERVICES WITH NODE.JS

    • What is Node.js?
    • Node’s Value Proposition
    • Example of a Node.js App: a Simple Web Server
    • Node.js Project Types
    • Managing Large Applications
    • Core Modules
    • Why Node.js uses JavaScript?
    • The Traditional Concurrency Support Model
    • Disadvantages of the Traditional Approach
    • Event-Driven, Non-Blocking I/O
    • The Success Callback Function
    • Using Node Package Manager (NPM)
    • NPM Registry (Repository)
    • NPM Enterprise
    • Package Life-Cycle Management
    • Local and Global Package Installation Options
    • Listing and Using Module Versions
    • The Express Package
    • Installing and Using Express
    • Defining Routing Rules in Express
    • Route Path
    • The Response Object
    • A Simple Web Service with Express Example
    • The MEAN Stack
    • Summary

    CHAPTER 3. REST SERVICES

    • Many Flavors of Services
    • Understanding REST
    • Principles of RESTful Services
    • REST Example – Create
    • REST Example – Retrieve
    • REST Example – Update
    • REST Example – Delete
    • REST Example – Client Generated ID
    • SOAP Equivalent Examples
    • REST Example – JSON
    • REST vs SOAP Communication
    • More REST vs SOAP
    • REST vs SOAP Summary
    • Famous RESTful Services
    • Additional Resources
    • Summary

    CHAPTER 4. COMPREHENSIVE INTRODUCTION TO ANGULARJS

    • What is AngularJS?
    • Why AngularJS?
    • How AngularJS Works
    • MVC with AngularJS
    • AngularJS MVC in a Nutshell
    • Scope and Goal of AngularJS
    • One-way (Traditional) Data Binding
    • Two-way Data Binding (the AngularJS Way)
    • A Very Simple AngularJS Application
    • Building Blocks of an AngularJS Application
    • Use of Model View Controller (MVC) Pattern
    • A Simple MVC Application
    • The View
    • The Controller
    • Data Binding
    • Dependency Injection (DI) in a Nutshell
    • DI in AngularJS
    • Other Client Side MVC Frameworks
    • Summary

    CHAPTER 5. 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 6. APACHE ZOOKEEPER

    • What is Apache ZooKeeper?
    • Apache ZooKeeper Logo
    • ZooKeeper Design
    • ZooKeeper High Availability
    • ZooKeeper – Client Interaction
    • Leader Election
    • The Big Picture
    • znodes: A Closer Look
    • Ephemeral znodes
    • ZooKeeper Java API
    • Watches
    • Summary

    CHAPTER 7. INTRODUCTION TO SPRING BOOT FOR NON-JAVA DEVELOPERS

    • What is Spring Boot?
    • Spring Boot Main Features
    • Spring Boot vs DropWizard
    • Spring Boot on the PaaS
    • Understanding Java Annotations
    • Spring MVC Annotations
    • Example of Spring MVC-based RESTful Web Service
    • Spring Booting Your RESTful Web Service
    • Spring Boot Skeletal Application Example
    • Converting a Spring Boot Application to a WAR File
    • Summary

    CHAPTER 8. 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 9. 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

    CHAPTER 10. INTRODUCTION TO CONTINUOUS INTEGRATION AND JENKINS-CI

    • Agile Development
    • Agile Development (cont’d)
    • What is Continuous Integration
    • What is Continuous Integration (cont’d)
    • Typical Setup for Continuous Integration
    • Jenkins Continuous Integration
    • Jenkins Features
    • Running Jenkins
    • Summary

    LAB EXERCISES

    Lab 1. Getting Started with Node.js
    Lab 2. Debugging a Node.js Application
    Lab 3. Creating a Web Service Using Express
    Lab 4. Getting Started with nginx Web Server
    Lab 5. AngularJS Web Service Client
    Lab 6. Getting Started with Apache Zookeeper CLI
    Lab 7. Getting Started with Spring Boot
    Lab 8. Learning the AWS Management Console
    Lab 9. Using S3 for Website Hosting
    Lab 10. Using Amazon Simple Queue Service

  • FAQs
    Is there a discount available for current students?

    UMBC students and alumni, as well as students who have previously taken a public training course with UMBC Training Centers are eligible for a 10% discount, capped at $250. Please provide a copy of your UMBC student ID or an unofficial transcript or the name of the UMBC Training Centers course you have completed. Online courses are excluded from this offer.

    What is the cancellation and refund policy?

    Student will receive a refund of paid registration fees only if UMBC Training Centers receives a notice of cancellation at least 10 business days prior to the class start date for classes or the exam date for exams.

Contact Us