So today i had to reset a boot in my Digital Ocean. Suda reboot. Luckily it was easy enough and no hard reboot. The issue was that it was not quite heavy on calls, and I realised if I had 300 users it would just crash.
I currently have the most basic Digital Ocean droplet.
I use it to automate a lot, specifically image generation models, then add watermarks, then upload to another API etc… so not too much. But handling 2Mb files I guess.
What i did when it crashed:
Launched parallel 30 executions, so really not that much
So the question is, what is the ideal good CPU/Memory SSD i need?
I’m currently on CPU and RAM only, should i add more Disk?
Very newbie about droplet management… I’d like something that’ll just perform and handle if loads of traffic. But then again I dont know what is the right “normal level” to start with and when to upgrade.
When it crashed did you check the OS logs to see if there was any indications of what the issue is? Typically 1 core and 1GB will get you started but how much you would actually need would depend on what you are doing so the best option would be to monitor and increase as needed.
It may also be worth remembering that you have 1vCPU and 1GB of memory to run the OS, n8n and anything else that may be on the machine, n8n itself is normally memory heavy but if you are using a lot of code nodes that can also require more cpu power.
It is probably worth also mentioning that n8n is only memory heavy because we read things into memory so if you were working with binary data those files will sit in memory. This can be tweaked by setting the N8N_DEFAULT_BINARY_DATA_MODE environment option to filesystem which will help and we have recently made some improvements to nodes that read files which has helped a lot.
With the binary data itself if you are using the filesystem option they will be deleted automatically along with your execution logs so the disk space should be ok, Normally the biggest file for n8n is the sqlite database so if you have not already done it I would recommend setting something like the below to reduce the amount of disk space, This will keep the execution data for 24 hours.
It may also be worth upgrading to make the most of some of the performance improvements, As for the memory I think you will be ok with 2GB but 3GB will give you room to grow as well.
Yeah that would do it, Assuming you are on a recent version of n8n you should be all good but before the filesystem option it would keep the files in memory unless you were writing them to disk. If you have a 1TB disk I would recommend finding out what the largest folders are I would also set the execution data to only save on failure by default that way you will have less log data to worry about.
I’ll keep it open until @stuart has as well, in case he has questions. It didn’t specifically down my overall graphs.
But I’ll ramp to a 2gb premium cpu to see how that helps and stress-test it.
Thanks Jon, just leaving a follow up incase someone else finds themselves in a similar situation.
I implemented these changes and also changed the EXECUTIONS_DATA_SAVE_ON_SUCCESS to none and it has been a game changer for my setup. My Cloudron system info file size has gone from over 1TB in space (massive!) to now consistently and not rising less than 40GB for the whole VPS which has a bunch of things on it.
Thanks for your help and if anyone else is doing a considerable image manipulation setup with N8n and struggling with disk size / requirements then these are some of the things you would want to use.