> For the complete documentation index, see [llms.txt](https://docs.poja.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.poja.io/examples/hello-world-but-with-1-000-simultaneous-calls-for-10-minutes-straight.md).

# Hello world, but with 1 000 simultaneous calls for 10 minutes straight

## Goal

We want **to test the scalability** of an Hello World Application hosted on Poja by sending 1 000 simultaneous calls for 10 minutes straight using the [Artillery Testing Tool](https://www.artillery.io/).

## How-to in 3 steps

### Step 1: Install Artillery

{% code title="Bash" %}

```bash
npm install -g artillery@latest
```

{% endcode %}

### Step 2: Write the test file

Create a YAML file named `artillery.yml` with the following content to create **1000 Virtual Users (VUs)** who will send parallel requests to the `/hello` endpoint of the application for **600 seconds** (10 minutes).

{% code title="YAML" %}

```yaml
config:
  target: "https://YOUR_ACTIVE_DEPLOYMENT_URI"
  phases:
    - duration: 600
    - arrivalRate: 1000
scenarios:
  - flow:
    - get:
        url: "/hello"
```

{% endcode %}

### Step 3: Execute the test

```bash
artillery run artillery.yml
```

Voilà! The testing tool will create the VUs and send the requests for the specified duration.

{% hint style="info" %}
**Test with a minimal conf application hosted on Poja**

We tried launching an Artillery test on a minimal application (with default configuration) hosted on Poja by sending 6000 simultaneous calls for 60 seconds, resulting in a **34ms p95**, means **95% of requests have a response time of less than 34ms**:

{% code title="Plain Text" %}

```
http.codes.200: ................................................................ 6000
http.request_rate: ............................................................. 100/sec
http.requests: ................................................................. 6000
http.response_time:
  min: ......................................................................... 18
  max: ......................................................................... 806
  median: ...................................................................... 24.8
  p95: ......................................................................... 34.1
  p99: ......................................................................... 415.8
```

{% endcode %}
{% endhint %}
