Initial work on a load testing tool for Meteor applications is complete:
It does a fair job of efficiently simulating clients without requiring changes to the target application. It utilizes
the Grinder to
manage agents which execute a customized test script capable of speaking DDP with the target Meteor server. Each agent simulates 1 or more client connections and records performance metrics. Users can configure options such as:
* Meteor methods to call
* Meteor subscriptions to initiate
* Number of clients to simulate
* Wait time between thread start
* Client ramp-up (process increment)
This tool evolved from discussion on the meteor-talk list:
Load Testing Meteor. In particular, I'd like to thank Andrew Wilcox, Sam Hatoum, Matt DeBergalis, and Tom Coleman for their guidance and suggestions.