This article is based on the content of aws knowledgebase.

You might have been stuck in memory leak when building some kinda javascript-heavy frontend apps like Vue or React on a cloud server itself. Just for serving built artifacts, we do not need large instances, but still the building process is always hungry for more memory you know.

Below is how to resolve such specific problem.

Oh, this is not the case if you already have a dedicated(partitioned) swap space, it’s a better option in any case but in most cases, we will be playing with servers without a swap patition.

Okay, let’s get started.

As a general rule, calculate swap space according to the following:

Amount of physical RAMRecommended swap space
2 GB or less2 * Amount of physical RAM
More than 2 GB, less than 32 GB4 GB + (Amount of physical RAM – 2 GB)
32 GB or more1 * Amount of physical RAM

Important Note: Swap sapce should never be less than 32 MB!

Steps

Create a swap file

1
sudo dd if=/dev/zero of=/swapfile bs=128M count=YOUR_COUNT

In the above command, bs is block size which should be less than the available memory at that moment.

bs * YOUR_COUNT will be your swap file size, for example, bs=128M count=32 means your swap file will be 4096 MB in size.

Update the read and write permissions for the swap file

1
sudo chmod 600 /swapfile

Set up a Linux swap area

1
sudo mkswap /swapfile

Make the swap file available for immediate use by adding the swap file to swap space

1
sudo swapon /swapfile

Verify that the procedure was successful:

1
sudo swapon -s

Enable the swap file at boot time by editing the /etc/fstab file

1
sudo vim /etc/fstab

Add the following line at the end of the file:

1
/swapfile swap swap defaults 0 0

Boom. Done.

Happy coding!