Home Page Icon
Home Page
Table of Contents for
Cover
Close
Cover
by Thomas Hunter II
Distributed Node.js
Preface
Target Audience
Goals
Conventions Used in This Book
Using Code Examples
O’Reilly Online Learning
How to Contact Us
Acknowledgments
1. Why Distributed?
Single-Threaded Nature of JavaScript
Quick Node.js Overview
Sample Applications
2. Protocols
Request and Response with HTTP
HTTP Payloads
HTTP Semantics
HTTP Compression
HTTPS / TLS
JSON over HTTP
The Dangers of Serializing POJOs
API Facade with GraphQL
GraphQL Schema
Queries and Responses
GraphQL Producer
GraphQL Consumer
RPC with gRPC
Protocol Buffers
gRPC Producer
gRPC Consumer
3. Scaling
The Cluster Module
A Simple Example
Request Dispatching
Cluster Shortcomings
Reverse proxies with HAProxy
Introduction to HAProxy
Load Balancing and Health Checks
Compression
TLS Termination
Rate Limiting and Back Pressure
SLA and Load Testing
Introduction to Autocannon
Running a Baseline Load Test
Reverse Proxy Concerns
Protocol Concerns
Formulating an SLA
4. Observability
Environments
Logging with ELK
Running ELK via Docker
Transmitting Logs from Node.js
Creating a Kibana Dashboard
Running Ad-Hoc Queries
Metrics with Graphite, StatsD, and Grafana
Running via Docker
Transmitting Metrics from Node.js
Creating a Grafana Dashboard
Node.js Health Indicators
Distributed Request Tracing with Zipkin
How Does Zipkin Work?
Running Zipkin via Docker
Transmitting Traces from Node.js
Visualizing a Request Tree
Visualizing Microservice Dependencies
Health Checks
Building a Health Check
Testing the Health Check
Alerting with Cabot
Create a Twilio Trial Account
Running Cabot via Docker
Creating a Health Check
5. Containers
Introduction to Docker
Containerizing a Node.js Service
Dependency Stage
Release Stage
From Image to Container
Rebuilding and Versioning an Image
Basic Orchestration with Docker Compose
Composing Node.js Services
Internal Docker Registry
Running the Docker Registry
Pushing and Pulling to the Registry
Running a Docker Registry UI
6. Deployments
Build Pipeline with Travis CI
Creating a Basic Project
Configuring Travis CI
Testing a Pull Request
Automated Testing
Unit Tests
Integration Tests
Code Coverage Enforcement
Deploying to Heroku
Create a Heroku App
Configure Travis CI
Deploy your Application
Modules, Packages, and SemVer
Node.js Modules
SemVer (Semantic Versioning)
npm Packages and the npm CLI
Internal npm Registry
Installing Verdaccio
Configuring npm to use Verdaccio
Publishing to Verdaccio
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Next
Next Chapter
Distributed Node.js
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset