Platform Profile:
Repository Profile:
- Fcrepo4 Git commit: https://github.com/futures/fcrepo4/commit/2afdcf07f701fb4026acbe93fe256fc43a5883ee
Setup Profile:
Benchtool
The benchmarking tool is available on github: https://github.com/futures/benchtool
git clone git@github.com:futures/benchtool.git cd benchtool mvn install
Benchtool is running on a different host.
Create Property Test Matrix
Workflow profile: Test - Workflow Profile: Benchtool Property Create
Benchtool command (one thread):
java -jar target/bench-tool-0.0.1-SNAPSHOT-jar-with-dependencies.jar -f http://saez:8080 -s 1K -n 10000 -t 1 -a ingest -pp
Threads | Objects | Datastream | Create Property Time (ms) |
---|---|---|---|
1 | 10000 | 1KB | 2,031,308 ms |
2 | 10000 | 1KB | 1,939,065 ms |
4 | 10000 | 1KB | 1,880,343 ms |
8 | 10000 | 1KB | 1,911,114 ms |
Read Property Test Matrix
Workflow profile: Test - Workflow Profile: Benchtool Property Read
Benchtool command (one thread):
java -jar target/bench-tool-0.0.1-SNAPSHOT-jar-with-dependencies.jar -f http://saez:8080 -s 1K -n 10000 -t 1 -a read -pp
Threads | Objects | Datastream | Read Property Time (ms) |
---|---|---|---|
1 | 10000 | 1KB | 32,299 ms |
2 | 10000 | 1KB | 17,541 ms |
4 | 10000 | 1KB | 11,097 ms |
8 | 10000 | 1KB | 10,271 ms |
Update Property Test Matrix
Workflow profile: Test - Workflow Profile: Benchtool Property Update
Benchtool command (one thread):
java -jar target/bench-tool-0.0.1-SNAPSHOT-jar-with-dependencies.jar -f http://saez:8080 -s 1K -n 10000 -t 1 -a update -pp
Threads | Objects | Datastream | Update Property Time (ms) |
---|---|---|---|
1 | 10000 | 1KB | 2,073,580 ms |
2 | 10000 | 1KB | 1,907,739 ms |
4 | 10000 | 1KB | 2,051,586 ms |
8 | 10000 | 1KB | 1,887,010 ms |
Delete Property Test Matrix
Workflow profile: Test - Workflow Profile: Benchtool Property Delete
Benchtool command (one thread):
java -jar target/bench-tool-0.0.1-SNAPSHOT-jar-with-dependencies.jar -f http://saez:8080
-s 1K -n 10000 -t 1 -a
delete -pp
Threads | Objects | Datastream | Delete Property Time (ms) |
---|---|---|---|
1 | 10000 | 1KB | 1,998,672 ms |
2 | 10000 | 1KB | 1,850,666 ms |
4 | 10000 | 1KB | 2,064,493 ms |
8 | 10000 | 1KB | 1,890,930 ms |
CRUD Concurrent Integration Test
Running CRUD integration tests (FedoraCrudConcurrentIT.java in fcrepo-http-api) for simple objects and small content files CREATE, UPDATE, DELETE and RETRIEVE with 2, 4, 8, 16, 32 concurrent threads.
Average CRUD response time (ms) for simple objects
Threads | Create | Update | Retrieve | Delete |
---|---|---|---|---|
2 | 2421 | 483 | 58 | 33 |
4 | 34 | 32 | 20 | 21 |
8 | 44 | 31 | 17 | 17 |
16 | 27 | 31 | 15 | 18 |
32 | 28 | 33 | 12 | 130 |
Average CRUD response time (ms) for content files
Threads | Ingest | Update | Retrieve | Delete |
---|---|---|---|---|
2 | 248 | 74 | 12 | 29 |
4 | 82 | 53 | 12 | 24 |
8 | 57 | 52 | 8 | 21 |
16 | 61 | 39 | 8 | 29 |
32 | 71 | 699 | 35 | 194 |