Stress test of subscriptions / methods

Hello we used for a while meteor-down for simulating stress tests on the subscriptions and publications.

Together with APM it was a perfect combination to test our system.

Unfortunately since we updated to meteor 1.8.1 meteor-down is no more working.

Is there any good alternative to make the stress test for the methods and the subscriptions, simulationg many users?

Thanks!

2 Likes

Would be interesting to discover a proper successor or a work-around

Why not fork it and maintain it to run with the current and future releases? If it is has been a crucial feature in your setup it should be valuable for you to invest some time into doing that.

You can also utilize this post to draw some attention to the package and get some people to support your work
:hammer_and_wrench:

6 Likes

Hey @danielmain,

We’ve built a load testing tool with first class Meteor and GraphQL support: https://astraload.com/astraload-saas/.

It can accurately reproduce user behavior and impose load to every single endpoint your application exposes, including Meteor methods and subscriptions, GraphQL resolvers and subscriptions, REST methods add raw websocket.

Please leave your contact data in a private message so we could proceed with stress testing your webapp.

4 Likes

Hey @eluck are you still running this ? Looking for tools to do stress tests

Hey @sabativi, yes we’re still in business. Let’s do it!

replace that line with

const session = Meteor.server.sessions.get(sessionId)

And for the NPM package, you can update dependencies and stop depending on coffee-script and replace with coffeescript. Ok just replace the packages.json with this:

{
  "name": "meteor-down",
  "version": "2.6.1",
  "description": "Load testing for Meteor",
  "repository": {
    "type": "git",
    "url": "https://github.com/meteorhacks/meteor-down.git"
  },
  "main": "./lib/mdown.js",
  "scripts": {
    "test": "./node_modules/mocha/bin/mocha"
  },
  "bin": {
    "meteor-down": "./bin/meteor-down.js"
  },
  "author": "Meteorhacks",
  "license": "MIT",
  "devDependencies": {
    "mocha": "^10.2.0"
  },
  "dependencies": {
    "coffeescript": "2.7.0",
    "ddp": "^0.12.1",
    "underscore": "1.13.6"
  }
}

Then in /bin/meteor-down.js replace in line 12
var coffee = require( "coffeescript" )
You can delete line 5 (require('http').globalAgent.maxSockets = 999999;). It is useless

You can install this NPM from a terminal or cmd while inside the NPM folder:

npm i -g @activitree/meteor-down@./

Everything else should be ok. Perhaps I will publish new variants under some new names
Cheers

1 Like