yum -y install erlang perl perl-RRD-Simple.noarch perl-Log-Log4perl-RRDs.noarch gnuplot perl-Template-Toolkit
wget http://tsung.erlang-projects.org/dist/tsung-1.6.0.tar.gz
tar xfz tsung-1.6.0.tar.gz
cd tsung-1.6.0
./configure && make && make install
mkdir /root/.tsung
- Amazon (https://aws.amazon.com/free/)
- DigitalOcean (https://www.digitalocean.com/join/)
- JMeter Server (https://hub.docker.com/r/hhcordero/docker-jmeter-server) aka "Slave"
- JMeter Client Non-gui (https://hub.docker.com/r/hhcordero/docker-jmeter-client) aka "Master"
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Elasticsearch Cheatsheet - an overview of commonly used Elasticsearch API commands | |
# cat paths | |
/_cat/allocation | |
/_cat/shards | |
/_cat/shards/{index} | |
/_cat/master | |
/_cat/nodes | |
/_cat/indices | |
/_cat/indices/{index} |
- install gcc+libs
- (yum install ...)
- install python3 (for familiar scripting with Pandas, Matplotlib etc.)
- (wget https://www.python.org/ftp/python/3.x.x/Python-3.x.x.tgz / wget https://www.python.org/ftp/python/3.x.x/Python-3.x.x.tar.xz)
- tar -xf Python-3.x.x.tgz
- cd Python-3.x.x
- ./configure & make & make altinstall
- make symlinks to pip3, python3 ...
- install Python libs (Pandas, MatPlotLib...)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
yum -y install erlang perl perl-RRD-Simple.noarch perl-Log-Log4perl-RRDs.noarch gnuplot perl-Template-Toolkit firefox | |
wget http://tsung.erlang-projects.org/dist/tsung-x.x.x.tar.gz | |
tar zxfv tsung-1.4.2.tar.gz | |
cd tsung-1.4.2 | |
./configure && make && make install | |
cp /usr/share/doc/tsung/examples/http_simple.xml /root/.tsung/tsung.xml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"builders": [ | |
{ | |
"type": "digitalocean", | |
"api_token": "XXXX", | |
"image": "ubuntu-14-04-x64", | |
"region" : "nyc3", | |
"size" : "1gb", | |
"droplet_name" : "gatlingNode" | |
}, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
################################################################################################################## | |
#Gatling scale out/cluster run script: | |
#Before running this script some assumptions are made: | |
#1) Public keys were exchange inorder to ssh with no password promot (ssh-copy-id on all remotes) | |
#2) Check read/write permissions on all folders declared in this script. | |
#3) Gatling installation (GATLING_HOME variable) is the same on all hosts | |
#4) Assuming all hosts has the same user name (if not change in script) | |
################################################################################################################## |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
upstream myapp { | |
server 127.0.0.1:8081; | |
} | |
limit_req_zone $binary_remote_addr zone=login:10m rate=1r/s; | |
server { | |
listen 443 ssl spdy; | |
server_name _; | |
Notes from Tuning Legacy Rails App: How to Make an Elephant Sprint
###Measuring performance
- Monitor the values of specific code paths and graph them to see performance over time (response times as one example metric)
- Automated tests that measure performance can fail based on a set threshold
- If a given code path exceeds 20% of the existing response time, then the automated test fails, alerting ops and devs that a recent code change has negatively impacted performance beyond an pre-defined SLA or threshold
- Need a production like environment
- Make that performance test environment exclusive to performance testing (don't let regular usage or QA usage affect the test results)
- Using NewRelic to compare boxes against each other