Prerequisites
- Download and install jmeter: http://jmeter.apache.org
Ubuntu 16.04 LTS: installjmeter.sh
#!/bin/bash # get source from an apache mirror wget http://supergsego.com/apache//jmeter/binaries/apache-jmeter-3.2.tgz # verify the md5 local_md5=`md5sum apache-jmeter-3.2.tgz | cut -f 1 -d ' '` remote_md5=`curl https://www.apache.org/dist/jmeter/binaries/apache-jmeter-3.2.tgz.md5 | cut -f 1 -d ' '` if [ "$local_md5" != "$remote_md5" ] then echo "md5's do not match" exit else echo "congratulations md5s match" fi # untar it. tar xvfz apache-jmeter-3.2.tgz # move it sudo mv apache-jmeter-3.2 /usr/local/apache-jmeter-3.2 # link it sudo ln -s /usr/local/apache-jmeter-3.2/bin/jmeter /usr/bin/jmeter
Instance setup and documentation
- Fedora 4 Specs
AWS
OS Instance Type
vCPU Memory Storage
(EBS or SSD)Java Fedora 4 Java configuration options (e.g. -Xmx 2G) Binary Configuration
(local, network, S3)Java 8 4.7.3 On-premises
OS Processor Speed
Cores Memory Storage
(SSD or Hard Disk)Java Fedora 4 Java configuration options (e.g. -Xmx 2G) Binary Configuration
(local, network, S3)Java 8 4.7.3
- Database Specs (Using JDBC object store)
- type (mysql, postgresql, aurora, etc)
- if using a remote database
- processor speed
- processor count
- RAM
- if RDS, RDS type (e.g. db1.small)
- JMeter client specs:
AWS:
OS Instance Type vCPU Memory Storage
(EBS or SSD)Java JMeter Ubuntu 16.04 LTS t2.small 1 2GB EBS Java 8 v3.1 On-premises
OS Processor Speed
Cores Memory Storage
(SSD or Hard Disk)Java JMeter
Fedora 4
- Installation:
- Fedora 4 Quick Start
- Deploying Fedora 4 Complete Guide
- Database: Configuring JDBC Object Store
- Fedora 4 Ansible script: https://github.com/VTUL/fcrepo4-ansible
- Fedora version (Start from 4.7.3)
- Using database? (local or remove)
Generate Test Data
Download the test scripts and read the README (https://github.com/fcrepo4-labs/fcrepo4-jmeter)
git clone https://github.com/fcrepo4-labs/fcrepo4-jmeter.git
Run a test. See each test JMeter command in README. For example, below code block is Test 4 JMeter command:
jmeter -Dfedora_4_server=SERVERIP -Dfedora_4_port=PORT -Dfedora_4_context=fcrepo/rest -Dcontainer_threads=1 -n -t /path/to/fcrepo4-jmeter/fedora.jmx
Generate Graphs Based on Your Test Data
Clone the Performance Analysis Project
git clone https://github.com/fcrepo4-labs/fcrepo_perf_analysis.git
Download and install the latest version of R https://www.r-project.org/
- Ubuntu 16.04 LTS: installr.sh
Start
R
shell$R
Install R Packages: ggplot2, knitr, rmarkdown, svglite
install.packages("ggplot2") install.packages("knitr") install.packages("rmarkdown") install.packages("svglite")
Follow steps outlined in https://github.com/fcrepo4-labs/fcrepo_perf_analysis
Run all steps in one command using createreport.sh:
./createreport.sh perf.log report