Create a fault-tolerant backend for your real-time applications using Docker, Node.js 10, and MongoDB, and implement HTTPS for hardened security
Key Features
-
Learn server-side programming with JavaScript and Node.js 10
-
Explore the latest JavaScript features and ECMAScript modules
-
Work through different stages of developing robust and scalable applications using Node.js
Book Description
Node.js is a server-side JavaScript framework that uses an event-driven and non-blocking I/O model, allowing users to build fast and scalable data-intensive applications.
The book starts with an introduction to HTTP server and client objects to help you build functional real-time applications. You'll then understand how you can integrate Socket.io for effective communication between objects. As you advance, you'll even be able to implement data storage in your application using SQL and MongoDB. With the help of practical examples, you'll cover a variety of such as adding themes using Bootstrap and deploying your microservices with Docker. Once you've built and deployed your applications, you'll learn how to add authentication against third-party services using OAuth to enable security for your Express applications.
By the end of the book, you'll be up and running with building, theming, deploying, and securing your web applications with the capabilities of Node 10 and Express.
What you will learn
-
Install and use Node.js 10 and Express 4.16 for both web development and deployment
-
Work with REST service development using the Restify framework
-
Use data storage engines such as MySQL, SQLITE3, and MongoDB
-
Explore a variety of user authentication methods with OAuth2
-
Perform real-time communication with the frontend using Socket.IO
-
Develop, test, and deploy microservices using Docker and Node
-
Perform unit testing with Mocha 5.x and functional testing with Puppeteer 1.1.x
-
Implement HTTPS using Let's Encrypt and enhance application security with Helmet
Who This Book Is For
If you're looking for an alternative to the "P" languages (Perl, PHP, and Python), or want to explore a new paradigm of server-side application development, this Node book is for you. You should have at least a rudimentary understanding of JavaScript and web application development.
Table of Contents
-
About Node.js
-
Setting up Node.js
-
Node.js Modules
-
HTTP Servers and Clients
-
Your First Express Application
-
Implementing the Mobile-First Paradigm
-
Data Storage and Retrieval
-
Multiuser Authentication the Microservice Way
-
Dynamic Client/Server Interaction with Socket.IO
-
Deploying Node.js Applications
-
Unit Testing
-
Security