Java Reactive Microservice Training

QBit Java Microservices Lib Quickstart

Course Summary


This four-day course introduces experienced developers to the reactive QBit microservices lib for Java. Developers will be enabled to build real-world, high-speed, fault-tolerant microservice systems in Java. This course has extensive hands-on work and successive exercises build upon prior lessons learned to produce a fully functional microservices that are fast, and fault tolerant.


Contact us at 415-968-9037 or info@mammatustech.com.



Duration

4 days.

Objective

After having participated in this course you should:

  • know how to design scalable, fault-tolerant, elastic microservices using QBit

  • know how to configure, test and tune QBit microservices

  • know best practices for designing asynchronous, reactive systems using QBit

  • be confident to start using QBit in production systems

  • produce high-speed REST services

  • produce high-speed WebSocket services

Prerequisites

Basic knowledge of Java, JSON, REST, HTTP etc. A background in Servlets, Java EE, and / or Spring will be helpful.


Outline

Introduction

Basic introduction to batched queues and internal messaging that QBit is built on.

Covers ServiceQueue, active objects, event driven development, and more.

Core concepts are covered, Queue, ServiceQueue, async programming, event bus, service discovery.

Service basics

Learn the basics of service queues. When to handle IO. How to optimize for IO bound versus CPU bound services. How to shard services. How to create worker pools. Handling callbacks.


Writing high-speed Restful Services

Learn how to expose your services via JSON and HTTP. Learn the ins and outs of being RESTful. Handling URI params, request params, header params and JSON bodies as arguments to RESTful or HTTP calls.




Writing high-speed WebSocket Services

Expose services as streaming websocket calls for additional speed.


Service discovery and using Consul with QBit

Work with services in remote service pools. Get notified when new server nodes join the service pool. Get notified if a server node becomes unhealthy. Report service health. Store and retrieve key/values that are used for config. Get notified when configuration of a service changes.

Event buses and event channels

Create local event buses, and remote replicated event buses. You can even cluster servers using service discovery.


Testing services

Fault tolerance and service monitoring with Consul and QBit

Scaling up with elastic services


Coordinating async calls with QBit Reactor, reactive programming support