w3c/rocket

Name: rocket

Owner: World Wide Web Consortium

Description: simple stress testing API for node application using socket io

Created: 2014-10-16 14:05:05.0

Updated: 2017-12-29 04:00:08.0

Pushed: 2015-11-30 06:09:19.0

Homepage: null

Size: 11

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

rocket

rocket is a simple stress-testing API for Node.js applications, made with socket.io.

Installation

install -d

Usage

use the configuration file

To use rocket you have to configure the file named 'conf.json' in the lib repository like that:

  1. create an empty json object.

    
    
  2. add your target. i.e the url of the application to test with rocket. It could be a local url.

    
    "target": "http://example.com"
    
    
  3. then, add client profiles tab.

    
    "target": "http://example.com",
    "profiles": []
    
    

this profile tab contain all kind of clients you need to simulate.

  1. create a client profile.

    
    "start": {
        "event": "name_start_event", //name of the event which will start the application
        "data": {} //data to sent with start event
    },
    "checkpoints": ["name_checkpoint1", "name_checkpoint2", ...], //checkpoints event received by the server side
    "stop": "name_stop_event", //received event which will stop the client
    "counter": 10 //number of clients
    
    
  2. example config file

    
    "target": "http://example.com",
    "profiles": [
        //client profile
        {
        "start": {
            "event": "name_start_event", //name of the event which will start the application
            "data": {} //data to sent with start event
        },
        "checkpoints": ["name_checkpoint1", "name_checkpoint2", ...], //checkpoints event received by the server side
        "stop": "name_stop_event", //received event which will stop the client
        "counter": 10 //number of clients
        },
        //client profile
        {
        "start": {
            "event": "name_start_event", //name of the event which will start the application
            "data": {} //data to sent with start event
        },
        "checkpoints": ["name_checkpoint1", "name_checkpoint2", ...], //checkpoints event received by the server side
        "stop": "name_stop_event", //received event which will stop the client
        "counter": 5 //number of clients
        }
    ]
    
    
  3. run rocket

     lib/rocket.js -f
    
use with commamd line arguments

not available yet.

License

Copyright (c) 2014 Guillaume Baudusseau MIT

Special thanks

I especially would like to thank deniak and tripu for helping me to find a wonderful name for a wonderful tool.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.