Building apps with major expected traffic spikes

I’ve been asked to build a polling app for my university where professors can ask a question to a large class (~1000 students) and the students can answer via their phones or laptops. The idea is that the professors can use this to increase interaction and participation as well as instantly see the results of the polls and which sorts of questions students are struggling with. I’m not sure if Mendix can handle this. To measure maximum allowed traffic, I’ve built a simple test widget into one of our existing apps and deployed to an acceptance server. I’ve used jMeter to launch hundreds of HTTP requests as shown in the following webinar: In my stress testing, Mendix seems to have a max throughput of 60-70 requests per second. If I try to do more (for instance, 1000 requests over a 10 second window), Mendix crashes completely with the following log error: “M2EE: Low on resources, maximum number of threads are in use (254)” (which isn’t terribly surprising given the kinds of spikes I’m simulating). Note: Sustained usage is usually fine, like 2000 requests over 30 seconds. I’ve built several apps in Mendix and it is currently my preferred platform for development. Is there any way to permanently increase the number of available threads? Is there a way to dynamically spin up additional threads when needed? Are there other approaches I could try to increase concurrent actions without overloading the system?
0 answers