Say on a server with 4 GB RAM with 2 CPUs (MongoDB and Redis are running on other dedicated servers), what is the expected performance of Appsmith, in terms of number of concurrent users using apps built by Appsmith, requests per second, transactions per second to internal / external databases, or any other metrics that make sense?
Does Appsmith support horizontal scaling? Can we run multiple servers serving the same Appsmith instance? Is there a limit?
@u128393 Apologies for the delay. Unfortunately, we don’t have the exact numbers to share yet. We’ll put up these numbers soon as part of the documentation.
Until then, here’s some information - What is the recommended Server HW spec?
@u128393 Appsmith does support horizontal scaling with Kubernetes.
We’ve load tested Appsmith with up to 200 concurrent users running very slow (20sec) queries
@dancia @Nikhil Great thanks for the response and sharing the test for concurrent users.
@Nikhil Could you share more about what does not work with horizontal scaling? What would happen if I run two Appsmith instances together?
@u128393 everything should work perfectly so long as you configure the mongo db and redis URIs to an external mongoDB and redis instance.
can you elaborate? if I have 3 containers serving requests will they share login session state as long as they have the same DB? @Nikhil
Hey @ssrivatsa, yes, if they share the same Redis. MongoDB is used to store all Appsmith data, and Redis is used for storing session information and as a cache. So, if your containers share the same Redis, then login sessions will work with all three containers.
Additionally, you’ll also want the three containers to have a common file-system. Like an NFS or an EFS (if you’re on AWS). This is so that git-connected applications can work predictably.