Measuer server load? Will deploying to a dual-core machine speed up my meteor app? RAM use?


#1

I would like the next version of the app I am working on to be extra-robust. But I don’t know enough about how node/meteor runs on the server and how the webserver directs requests, etc.

I have the option of moving from a $10 Digital Ocean droplet that has 1 CPU to a $20 droplet that has 2 CPUs.

I only have about 15 users, but I have a complex setup with observers (which automatically run calculations and take actions when certain collections change, which happens on a regular basis). Will 2 CPUs allow a setup with dozens of observers to basically run stuff in parallel?

Also, how quickly does a meteor app exhaust 1 GB of RAM on a server? What are some metrics to think about in this regard?


#2

You won’t be able to get 2x more from 2 cores. However the RAM can help if you’re maxing out from subscriptions eating up RAM. Some tools like Phusion can utilize a meteor app on each core but i’m not sure how well it works today.

Can you split the part that does computations onto a 2nd app and have that talk to the main app via DDP? If so that could be an easier way to scale.

Also, how quickly does a meteor app exhaust 1 GB of RAM on a server? What are some metrics to think about in this regard?

This will depend on the app. You can use a cloud testing service to throw a lot of traffic at your app to see how many you can get on one box before things get very slow. Just make sure to script user activity with jQuery so each time the test opens a new window that users will click about and do ‘stuff’ a normal user would.