This benchmark test provides some eXtremeDB High Availability performance statistics for create, update and delete operations in different HA modes. Read-only operations (e.g. searching or getting field values) are "local" in nature, so they are not measured. The replica also measures synchronization time.
The master application creates the database, then creates, updates and deletes objects (to demonstrate performance without replicas attached) and then waits for connection requests. After the replica attaches, it repeats the create-update-delete cycle to demonstrate performance of operations with replication.
The master has the following command-line options:
-a N - use ASYNC mode with async buffer size N Kb (see also sample
haasync
)-h - use hot synchronization (see also sample
hahotsync
)-m - use multicast (see also sample
hamcast
)-w N - use transaction window of size N (see also sample
hawindow
)-s - use shared commit mode - only for shared-memory configuration (see also sample
hashared
)-n N - makes N operations per transaction ( N = 1 by default )
The replica has the following command-line options:
-m - use multicast (has to be the same as for haperf_master) <connection_string> - address of master instance, (
127.0.0.1:10000
by default)
See instructions here on how to build this and other samples on your development platform. Once built, the sample can be run from the
\target\bin
directory.In a console window run:
haperf_masterThen in a second console window run:
haperf_replicaBut it is more instructive to run one instance in your development environment debugger, stepping through the code.