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/futuresfcrepo4-labs/benchtool
Code Block |
---|
git clone git@github.com:futuresfcrepo4-labs/benchtool.git cd benchtool mvn install |
...
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 | ObjectsContainers | BinaryDatastream | 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 | ObjectsContainers | BinaryDatastream | 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 | ObjectsContainers | BinaryDatastream | 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 | ObjectsContainers | BinaryDatastream | 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.
...
ms |
...
Test result started with threads [2, 4, 8, 16, 32]:
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 |
Test result started with threads [32, 16, 8, 4, 2]:
Threads | Create | Update | Retrieve | Delete |
---|---|---|---|---|
32 | 136 | 83 | 17 | 18 |
16 | 38 | 27 | 12 | 15 |
8 | 18 | 23 | 14 | 14 |
4 | 18 | 23 | 11 | 13 |
2 | 22 | 177 | 10 | 143 |
Average CRUD response time (ms) for content files
Test result started with threads [2, 4, 8, 16, 32]:
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 |
Test result started with threads [32, 16, 8, 4, 2]:
Threads | Create | Update | Retrieve | Delete |
---|---|---|---|---|
32 | 81 | 56 | 8 | 23 |
16 | 68 | 56 | 8 | 17 |
8 | 55 | 30 | 5 | 21 |
4 | 48 | 34 | 6 | 16 |
2 | 110 | 838 | 5 | 297 |
...