Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/Syerram/twilio_load

A Load tester tool for twilio endpoints
https://github.com/Syerram/twilio_load

Last synced: 17 days ago
JSON representation

A Load tester tool for twilio endpoints

Lists

README

        

##Twilio Endpoint Load tester

The goal of the script is to load test your twilio endpoint, just like a simple `ab` tester.
You can pass json data to the endpoint (both valid and invalid) and see how it utilizes resources and get an **estimate of costs** of using twilio with high load.
For e.g. You can send 5000 invalid requests and see how your server utilizes its resources (does it flood the log files, emails, database, costs of receiving/replying etc).

In order to run the script, make a copy of the sample ini files and then run

```
$ go build tw_load.go
$ ./tw_load -f ./tw_load.ini -d ./tw_data.ini
```

Once completed, it will print the results of the load testing along with costs of sending/receiving messages (sample response below)

```
Benchmarking http://127.0.0.1:5000/sms (be patient).....
Done!
Document Path: http://127.0.0.1:5000/sms
Concurrency Level: 5
Users: 200
Completed requests: 1000
Failed requests: 0
Total time: 2.15083s
Time per request: 10.691935ms
-----------------------------------
Total recv: 1000
Total sent 1000
Approx cost: $15.00

```

###Config INI
Contains information such as account token, load factors. Check ini files for more documentation.

###Data INI
Contains data that needs to be sent to the endpoint. Check ini files for more documentation.

###Tests
To run tests, make a copy of the sample ini files and then adjust values. Then run `go test -v`

###TODO
- Remove the data ini file and instead choose a simple file format (txt) by having each line as a json data row. We can then distribute data across the requests