Scaling node.js has officially started

With the delivery of my last reviewed draft for the second edition of PRO REST API Development with Node.js, also beings the work on the second chapter of Scaling Node.js Apps. Yes, it's the second one, since I wrote the first one while reviewing the chapters of the previous book.

But now it's "officially official", I'm done with the second edition, it's on the hands of the good people from Apress, who're doing the final editorial bits before it can actually be published (you can pre-order it already however *wink* *wink* *nudge* *nudge*).

In case you were wondering, here is what to expect from this book:

Chapter 1: The need to scale. This chapter will cover some of the factors that normally affect the performance of a platform, such as:

  • Increased traffic

  • Increased amount of data to process

  • Fault tolerant

  • High availability

Chapter 2: Architectural patterns. Here I’ll cover the basis of valid and scalable architectures.

Some of the patterns that will be covered are:

  • Layered

  • Microservices

  • Lambda

  • Event driven

Chapter 3: Ways to scale. In this chapter I’ll go over the classic techniques used to scale up a system, depending on the type of architecture and the scaling needs. Some of the topics that will be covered are:

  • Horizontal vs Vertical scaling

  • Cloning

  • Load balancing

  • Clustering

In this chapters, some of these topics will start being approached from a Node.js perspective (such as clustering).

Chapter 4: Issues when scaling. The techniques mentioned in chapter 3 will cause some unwanted consequences, due to the changes required in your application. In this chapter, we’ll go over a basic list of them, such as:

  • Sharing information when multiprocessing

  • Syncing up processes

  • Limitations on Node.js when scaling inside a single server

  • Dealing with logs after you’ve scaled up

Chapter 5: When to scale? An overview of platform monitoring solutions that will come in handy when trying to decide when to trigger a scaling-related action. Also, this chapter will explain the concept of elastic scaling.

Chapter 6: Testing your application. A quick overview of what testing is and what it means to have your application’s code covered with tests. I’ll go over some code samples and the most common modules used for this task.

Chapter 7: Success cases. Finally, I’ll go over some publicly available success cases from companies like Netflix. In these cases I’ll analyze the problems they were facing and the solutions they implemented.

It's not planned to be a very big and hard to read book, instead the plan is to make it concise and to the point, showing examples where it makes sense and serving as an introduction into the world of scaling platform.

As always, thanks for reading and if you're interested in knowing more about my upcoming books or anything else I may want to talk about, don't hesitate to follow me on social media or leave your email below.

Have fun!


Recent Posts

See All