Distributed Node.js Early Access

I'm writing a book on using Node.js to develop backend services. The book emphasises interaction with other services, such as the ELK stack for logging or Grafana and Graphite for metrics or Kubernetes for container orchestrations. It's a very hands-on book and by the time the reader is finished going through the book they will have touched dozens of different services.

The book is currently two-thirds written and should be published early 2021 at the latest. It will be around 350 pages, spanning around ten chapters.

This emphasis on tooling external to the Node.js process is what really sets it apart from other titles. It also doesn't consider rendering, browsers, “isomorphic JavaScript”, or really any other frontend concerns. Here's a list of some of the technologies that I anticipate the book to cover:

  • GraphQL
  • gRPC
  • Autocannon
  • Cluster module
  • HAProxy
  • Elasticsearch, Logstash, Kibana (ELK)
  • Graphite, StatsD, Grafana
  • Zipkin
  • Docker
  • Kubernetes
  • Docker Registry
  • Travis CI
  • Heroku
  • Verdaccio npm Registry
  • Etcd
  • Redis
  • Kafka
  • PostgreSQL

Node.js is used by many companies for building performant backend services without sacrificing developer efficiency. Thanks to its approachable API and familiar syntax, Node.js is loved by engineers and used by startups and Fortune 500s alike. Backed by the world's largest package repository, its enterprise foothold is only expected to grow.

In this hands-on guide, author Thomas Hunter II proves that Node.js is just as capable as traditional enterprise platforms for building services that are observable, scalable, and resilient. Intermediate to advanced Node.js developers will find themselves integrating application code with a breadth of tooling from each layer of a modern service stack.

  • Learn why running redundant copies of the same Node.js service is necessary
  • Know which protocol to choose, depending on the situation
  • Fine-tune your application containers for use in production
  • Track down errors in a distributed setting to determine which service is at fault
  • Simplify app code and increase performance by offloading work to a reverse proxy
  • Build dashboards to monitor service health and throughput
  • Find out why so many different tools are required when operating in an enterprise environment
Thomas Hunter II Avatar

Thomas has contributed to dozens of enterprise Node.js services and has worked for a company dedicated to securing Node.js. He has spoken at several conferences on Node.js and JavaScript, is currently writing a book on Node.js services with O'Reilly, and is an organizer of NodeSchool SF.