Building Communication Services Using RabbitMQ and Node.JS

Inquire now

Course Overview:

This training program is aimed at building high scalable server applications using Node.js and RabbitMQ. Participants will learn how to build server APIs using Node.js and understand and exploit the benefits of “Single Threaded Event Loop”. Participants will also learn to build scalable solutions using RabbitMQ as the messaging platform for communication between services and learn to exploit the various messaging strategies for better scalability and reliability.

Course Objectives:

  • This workshop is aimed at imparting the required know-how to build and manage applications using Node.js & RabbitMQ

Pre-requisites:

  • Experience with the Linux command line interface.
  • An understanding of enterprise application development concepts.

Target Audience:

  • IT specialists
  • Developers
  • System Architects

Course Duration:

  • 35 hours – 5 days

Course Content:

MESSAGING SOLUTIONS USING RABBITMQ

  1. Introduction to RabbitMQ
  1. Understanding Queueing Architecture
  • Message Queueing
  • Uses for Message Queueing
  1. Core Concepts
  • AMQP Messaging Standard
  • Exchanges
  • Queues, Bindings & Consumers
  • Standard Queue
  • Worker Queue
  • Publish & Subscribe
  • Direct Routing
  1. Exchanges & Bindings
  • Direct Exchange
  • Default Exchange
  • Topic Exchange
  • Fanout Exchange
  • Dead Letter Exchange
  1. Understanding Messaging
  • The role of a consumer
  • The role of a producer
  • Bindings consumers and producers
  • Messages and durability
  • How to verify delivery
  1. ES6
  1. New in ES6
  • Classes
  • let and const
  • Arrow functions
  • Enhanced Object Literals
  • Array & Object Destructuring
  • Spread Operator
  • Generators and Iterators
  • Symbols
  • Comprehensions
  • Async Programming using Promises
  • Async Await

BUILDING APPLICATIONS USING NODE.JS

  1. Introduction to Node.js
  • Installing Node.js
  • Node’s Event Loop
  • Alternatives to Node.js
  • Writing asynchronous code
  1. Modularizing code
  • Understanding built-in modules
  • Techniques for modularizing JavaScirpt code
  • Using require() to modularize application code
  • Using npm for third-party modules
  • Handling Exceptions
  1. Events and Streams
  • Understanding Events
  • EventEmitter class
  • Understanding Streams
  • Reading and writing streams
  • Using pipe()
  1. Accessing Local Resources
  • Process Object
  • Manipulating File System
  • Understanding Buffers
  1. js and the web
  • Handling web requests
  • Building a web server
  • Understanding the need for web sockets
  • Realtime interaction using socket.io
  1. Building web API using Express.js
  • Installing Express.js
  • Routing
  • Parameters and queries in routing
  • Working with cookies and sessions
  • Authentication and authorization
  • Error Handling
  1. Data Persistence in Node.js
  • Installing SQLite client module
  • Establishing connections
  • Executing Queries
  • Binding Parameters
  • Inserting, Updating and Deleting Data

 

  1. Building Network Servers & Clients
  • Creating a TCP Server
  • Creating a TCP Client
  • Creating a HTTP/HTTPS client
  • Using the Restler module
  1. Testing Node.js Applications
  • Introduction to TAP
  • Installing node-tap
  • Test Organization
  • Performing Assertions
  • Testing Async with Promises
  • Mocking dependencies using Nock
  • Test Coverage
  1. Scaling Node applications
  • The Child process model
  • exec, spawn, and fork functions
  • Using the Cluster module
  1. js Eco System
  • ONode Packages
  • Packages of interest
  • Deciding Factors
  1. Debugging Node Applications

BUILDING API FOR MESSAGING INTERFACES USING NODE.JS & RABBITMQ

  1. Building RabbitMQ service consumers
  • Installing RabbitMQ Client
  • Connecting to Message Broker
  • Sending Messages
  • Receiving Messages
  1. Implementing Queuing Code
  • Topic Based Publisher & Subscriber for Notifications
  • Simple Publish & Subscribe
  • Publisher Confirmation
  • Polymorphic Publish and Subscribe
  • Controlling Queues and Exchange Names
  • Remote Procedure Calls ?Synchronous RPC
  • Asynchronous RPC oTargeted Messaging
  • Using Send and Receive Pattern oFlexible Routing
  • Topic based publish & subscribe

RABBITMQ ADMINISTRATION

(Duration for this topic is reduced because of the usage of managed services)

  1. Administering RabbitMQ oClusters & Nodes
  • Creating and starting a managed instance
  1. Managing Connections & Channels
  • Starting and stopping nodes
  • RabbitMQ configuration files
  • How to manage privileges
  • Viewing statistics and analyzing logs
  • Sending alerts
  • How to set up parallel processing
  1. High availability with cluster
  • Architecture of a cluster
  • Queues in a cluster
  • Setting up a test cluster
  • Distributing the nodes to more machines
  • How to preserve messages: mirrored queues
  1. Implementing failover and replication
  • Setting up a load balancer-based master/slave
  • Installing the Shovel plugin
  • Configuring and running Shovel
  1. Web tools to administer RabbitMQ
  • The RabbitMQ Management plugin
  • Managing RabbitMQ from the web console
  • Administering users from the web console
  • Managing queue from the web console
  • Using the command line interface
  1. RabbitMQ and the REST API
  • REST API features
  • Accessing statistics
  • vhost and user provisioning
  1. Monitoring and securing RabbitMQ
  • Message durability and Message acknowledgement
  • Memory usage and process limits
  • Setting up SSL

 

 

Course Customization Options

To request a customized training for this course, please contact us to arrange.

Inquire now

Best selling courses

Duration 3 days – 21 hrs   Overview    This Portfolio Management Training Course is designed to provide banking professionals with a comprehensive understanding of how to effectively manage investment and credit portfolios. Participants will gain insights into strategic allocation, performance measurement, risk management, and optimization of banking portfolios to align with regulatory requirements and...

Duration 2 days – 14 hrs   Overview   This comprehensive Planning and Forecasting Training Course is designed to empower professionals with the tools and techniques necessary to accurately predict future outcomes and develop strategic, operational, and financial plans. The course provides a structured approach to planning and forecasting, integrating both qualitative and quantitative methods....

Duration 3 days – 21 hours   Overview   This Beginner-to-Intermediate PostgreSQL Training Course is designed to build strong foundational skills in PostgreSQL while preparing participants to confidently work with real-world database tasks in modern environments.   Participants will learn how PostgreSQL works, how to write efficient SQL queries, how to design and manage database...

RISK MANAGEMENT

Liquidity Risk Management

Duration 5 days – 35 hrs   Overview.   This Liquidity Risk Management Training Course is tailored for banking professionals in the Philippines, focusing on the skills and knowledge necessary to manage liquidity risk effectively. Participants will learn how to assess liquidity risk, apply regulatory standards, and develop strategies to maintain adequate cash flow and...

Duration 5 days – 35 hrs   Overview    This 5-day advanced training course is designed for senior PMO leaders, program managers, PMO directors, and executives aiming to enhance their leadership capabilities and transform their PMOs into strategic business drivers. The course will explore advanced concepts in PMO strategy, digital transformation, innovation, business case development,...

TRAINOSYS CUSTOMIZED COURSE

Data Analytics from SQL to Power BI

The “Data Analytics from SQL to Power BI” training course is a comprehensive program designed to equip participants with the knowledge and skills necessary to analyze and visualize data using SQL and Power BI. Over the course of five days, participants will learn essential data analytics concepts, master SQL querying techniques for data retrieval and...

Duration 2 days – 14 hrs   Overview   This course provides a comprehensive understanding of the Anti-Money Laundering Act (AMLA) of the Philippines and techniques for identifying and handling counterfeit money. It equips participants with the knowledge to detect suspicious transactions, fulfill AML compliance obligations, and mitigate financial crime risks. Real-world case studies, regulatory...

Duration 2 days – 14 hrs   Overview   This course introduces participants to the principles and tools of data visualization and dashboard design. It focuses on transforming raw data into compelling, clear, and actionable visuals that support decision-making. Participants will explore visualization best practices, storytelling techniques, and hands-on tools (such as Excel, Power BI,...

We use cookies on our website to personalize your experience by storing your preferences and recognizing repeat visits. By clicking “Accept”, you agree to the use of all cookies. You can also select “Cookie Settings” to adjust your preferences and provide more specific consent. Cookie Policy