# What is a Blueprint Cluster?

[Clustering](https://nodejs.org/api/cluster.html) in NodeJS is the process of running multiple instances of a NodeJS application such that one process is the master process and the other processes are worker processes. This is necessary feature because a NodeJS application is single-threaded. This means that all events are processed by the same execution thread. We you run a NodeJS application on a multi-core machine, it is hard for the NodeJS application to take advantage of computing power available via the many cores on the machine.

We understand the importance of [running a NodeJS cluster](https://nodejs.org/api/cluster.html) when it relates to scaling an NodeJS application to handle large numbers of requests. We therefore have integrated cluster support into Blueprint.

{% hint style="info" %}
A *Blueprint cluster* is when you run a Blueprint application as a NodeJS cluster.
{% endhint %}

{% hint style="info" %}
Blueprint cluster is an experimental feature. Its functionality may change in the future as we learn more about its usage in the wild.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://blueprint.onehilltech.com/developer-guide/blueprint-cluster/background.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
