-
Notifications
You must be signed in to change notification settings - Fork 104
OpenDJ vs OpenLDAP
Philip Brown edited this page Feb 22, 2019
·
16 revisions
Community versions LDAP server software without any tuning:
- OpenLDAP 2.4.5 slapd (Ubuntu) (Oct 23 2018 12:47:19) with default config on MDB store
- OpenDJ 4.2.5 with default config on Java 11
For stress performance test used single node with apache-jmeter-5.0 thread pool like 256 concurrent users in simple loop for 600 seconds:
- Bind
- Add
- Search
- Compare
- Modify
- Delete
- Add without Delete (accumulation of records)
- Unbind
OpenDJ responded with approximately twice the number of operations per second, after initial warmup.
/root/apache-jmeter-5.0/bin/jmeter -n -t openldap.jmx -l openldap.result -j openldap.log -e -o /root/OpenDJ_vs_OpenLDAP/openldap
Creating summariser <summary>
Created the tree successfully using openldap.jmx
Starting the test @ Fri Dec 07 09:00:38 MSK 2018 (1544162438553)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
Warning: Nashorn engine is planned to be removed from a future JDK release
summary + 15358 in 00:00:21 = 732.4/s Avg: 322 Min: 0 Max: 2870 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary + 18959 in 00:00:30 = 632.2/s Avg: 405 Min: 0 Max: 3607 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 34317 in 00:00:51 = 673.4/s Avg: 368 Min: 0 Max: 3607 Err: 0 (0.00%)
summary + 18305 in 00:00:30 = 610.1/s Avg: 417 Min: 0 Max: 3708 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 52622 in 00:01:21 = 650.0/s Avg: 385 Min: 0 Max: 3708 Err: 0 (0.00%)
summary + 17857 in 00:00:30 = 595.3/s Avg: 430 Min: 0 Max: 3811 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 70479 in 00:01:51 = 635.2/s Avg: 396 Min: 0 Max: 3811 Err: 0 (0.00%)
summary + 17153 in 00:00:30 = 571.7/s Avg: 452 Min: 0 Max: 3929 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 87632 in 00:02:21 = 621.7/s Avg: 407 Min: 0 Max: 3929 Err: 0 (0.00%)
summary + 17602 in 00:00:30 = 586.8/s Avg: 430 Min: 0 Max: 3776 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 105234 in 00:02:51 = 615.5/s Avg: 411 Min: 0 Max: 3929 Err: 0 (0.00%)
summary + 17280 in 00:00:30 = 576.0/s Avg: 444 Min: 0 Max: 3793 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 122514 in 00:03:21 = 609.6/s Avg: 416 Min: 0 Max: 3929 Err: 0 (0.00%)
summary + 17442 in 00:00:30 = 581.4/s Avg: 440 Min: 0 Max: 3863 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 139956 in 00:03:51 = 606.0/s Avg: 419 Min: 0 Max: 3929 Err: 0 (0.00%)
summary + 16508 in 00:00:30 = 550.2/s Avg: 463 Min: 0 Max: 3947 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 156464 in 00:04:21 = 599.6/s Avg: 423 Min: 0 Max: 3947 Err: 0 (0.00%)
summary + 15008 in 00:00:30 = 500.3/s Avg: 511 Min: 0 Max: 5823 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 171472 in 00:04:51 = 589.3/s Avg: 431 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 16392 in 00:00:30 = 546.4/s Avg: 468 Min: 0 Max: 4002 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 187864 in 00:05:21 = 585.3/s Avg: 434 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 16167 in 00:00:30 = 538.9/s Avg: 473 Min: 0 Max: 4216 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 204031 in 00:05:51 = 581.3/s Avg: 437 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 16005 in 00:00:30 = 533.5/s Avg: 502 Min: 0 Max: 4027 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 220036 in 00:06:21 = 577.6/s Avg: 442 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 16057 in 00:00:30 = 535.2/s Avg: 455 Min: 0 Max: 4051 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 236093 in 00:06:51 = 574.5/s Avg: 443 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 16017 in 00:00:30 = 533.9/s Avg: 474 Min: 0 Max: 4128 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 252110 in 00:07:21 = 571.7/s Avg: 445 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 15473 in 00:00:30 = 515.8/s Avg: 496 Min: 0 Max: 4110 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 267583 in 00:07:51 = 568.2/s Avg: 448 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 15587 in 00:00:30 = 519.5/s Avg: 495 Min: 0 Max: 4359 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 283170 in 00:08:21 = 565.2/s Avg: 451 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 15667 in 00:00:30 = 522.3/s Avg: 491 Min: 0 Max: 4284 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 298837 in 00:08:51 = 562.8/s Avg: 453 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 15302 in 00:00:30 = 510.1/s Avg: 499 Min: 0 Max: 4246 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 314139 in 00:09:21 = 560.0/s Avg: 455 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 15047 in 00:00:30 = 501.5/s Avg: 509 Min: 0 Max: 4394 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 329186 in 00:09:51 = 557.0/s Avg: 457 Min: 0 Max: 5823 Err: 0 (0.00%)
summary + 4970 in 00:00:09 = 537.6/s Avg: 556 Min: 0 Max: 3744 Err: 0 (0.00%) Active: 0 Started: 256 Finished: 256
summary = 334156 in 00:10:00 = 556.7/s Avg: 459 Min: 0 Max: 5823 Err: 0 (0.00%)
Tidying up ... @ Fri Dec 07 09:10:39 MSK 2018 (1544163039247)
... end of run
Accumulation result (count records):
ldapsearch -LLL -s sub -x -h localhost -p 2389 -D "cn=admin,dc=example,dc=com" -w "1" -b "ou=people,dc=example,dc=com" "(objectClass=*)" cn | grep cn: | wc -l
41747
# /root/apache-jmeter-5.0/bin/jmeter -n -t opendj.jmx -l opendj.result -j opendj.log -e -o /root/OpenDJ_vs_OpenLDAP/opendj
Creating summariser <summary>
Created the tree successfully using opendj.jmx
Starting the test @ Fri Dec 07 08:47:06 MSK 2018 (1544161626471)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
Warning: Nashorn engine is planned to be removed from a future JDK release
summary + 9700 in 00:00:23 = 424.6/s Avg: 579 Min: 0 Max: 2968 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary + 7692 in 00:00:30 = 256.4/s Avg: 992 Min: 0 Max: 3410 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 17392 in 00:00:53 = 329.1/s Avg: 762 Min: 0 Max: 3410 Err: 0 (0.00%)
summary + 6065 in 00:00:30 = 202.2/s Avg: 1262 Min: 0 Max: 4125 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 23457 in 00:01:23 = 283.1/s Avg: 891 Min: 0 Max: 4125 Err: 0 (0.00%)
summary + 4875 in 00:00:30 = 162.5/s Avg: 1580 Min: 0 Max: 4704 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 28332 in 00:01:53 = 251.1/s Avg: 1010 Min: 0 Max: 4704 Err: 0 (0.00%)
summary + 13119 in 00:00:31 = 429.4/s Avg: 583 Min: 0 Max: 5448 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 41451 in 00:02:23 = 289.1/s Avg: 875 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 66098 in 00:00:29 = 2244.5/s Avg: 118 Min: 0 Max: 1560 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 107549 in 00:02:53 = 622.3/s Avg: 410 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 77942 in 00:00:30 = 2598.1/s Avg: 98 Min: 0 Max: 1528 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 185491 in 00:03:23 = 914.5/s Avg: 279 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 69221 in 00:00:30 = 2307.4/s Avg: 110 Min: 0 Max: 1517 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 254712 in 00:03:53 = 1093.9/s Avg: 233 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 59930 in 00:00:30 = 1997.7/s Avg: 127 Min: 0 Max: 1721 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 314642 in 00:04:23 = 1197.1/s Avg: 213 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 64179 in 00:00:30 = 2139.3/s Avg: 119 Min: 0 Max: 1844 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 378821 in 00:04:53 = 1293.6/s Avg: 197 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 61001 in 00:00:30 = 2033.4/s Avg: 125 Min: 0 Max: 1870 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 439822 in 00:05:23 = 1362.4/s Avg: 187 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 49007 in 00:00:30 = 1633.6/s Avg: 152 Min: 0 Max: 1739 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 488829 in 00:05:53 = 1385.4/s Avg: 184 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 56514 in 00:00:30 = 1883.8/s Avg: 139 Min: 0 Max: 1673 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 545343 in 00:06:23 = 1424.5/s Avg: 179 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 55300 in 00:00:30 = 1843.3/s Avg: 138 Min: 0 Max: 1727 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 600643 in 00:06:53 = 1454.9/s Avg: 175 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 59255 in 00:00:30 = 1975.2/s Avg: 129 Min: 0 Max: 1590 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 659898 in 00:07:23 = 1490.2/s Avg: 171 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 54036 in 00:00:30 = 1801.2/s Avg: 141 Min: 0 Max: 2211 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 713934 in 00:07:53 = 1509.9/s Avg: 169 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 61175 in 00:00:30 = 2039.2/s Avg: 125 Min: 0 Max: 1651 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 775109 in 00:08:23 = 1541.5/s Avg: 165 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 68932 in 00:00:30 = 2297.7/s Avg: 111 Min: 0 Max: 1945 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 844041 in 00:08:53 = 1584.1/s Avg: 161 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 64205 in 00:00:30 = 2128.0/s Avg: 117 Min: 0 Max: 2209 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 908246 in 00:09:23 = 1613.2/s Avg: 158 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 68444 in 00:00:30 = 2294.6/s Avg: 114 Min: 0 Max: 1908 Err: 0 (0.00%) Active: 256 Started: 256 Finished: 0
summary = 976690 in 00:09:53 = 1647.5/s Avg: 155 Min: 0 Max: 5448 Err: 0 (0.00%)
summary + 17790 in 00:00:07 = 2413.5/s Avg: 104 Min: 0 Max: 1460 Err: 0 (0.00%) Active: 0 Started: 256 Finished: 256
summary = 994480 in 00:10:00 = 1656.9/s Avg: 154 Min: 0 Max: 5448 Err: 0 (0.00%)
Tidying up ... @ Fri Dec 07 08:57:07 MSK 2018 (1544162227372)
... end of run
Accumulation result (count records):
ldapsearch -LLL -s sub -x -h localhost -p 1389 -D "cn=Directory Manager" -w "1" -b "ou=people,dc=example,dc=com" "(objectClass=*)" cn | grep cn: | wc -l
124333
OpenDJ is an LDAPv3 compliant directory service, which has been developed for the Java platform, providing a high performance, highly available, and secure store for the identities managed by your organization. Its easy installation process, combined with the power of the Java platform makes OpenDJ the simplest, fastest directory to deploy and manage.