The Aerospike 3.3.12 configuration in my aerospike.conf (the server has 24 CPUs): service-threads 20 transaction-queues 20 transaction-threads-per-queue 3 fabric-workers 36 proto-fd-max 15000
With #Insert threads = 1: #Query threads = 0: Insert latency = 0.06ms #Query threads = 1: Insert latency = 0.08ms #Query threads = 2: Insert latency = 0.14ms #Query threads = 3: Insert latency = 0.15ms #Query threads = 5: Insert latency = 0.15ms #Query threads = 10: Insert latency = 0.15ms
With #Insert threads = 2: #Query threads = 0: Insert latency = 0.06ms #Query threads = 1: Insert latency = 0.07ms #Query threads = 2: Insert latency = 0.08ms #Query threads = 3: Insert latency = 0.10ms #Query threads = 5: Insert latency = 0.10ms #Query threads = 10: Insert latency = 0.10ms
Obviously, there is a threshold when #Query threads >= # Insert threads.
How to tune it, or enhancement from Aerospike? As my Use Case has many clients need to Query the DB server on a Secondary Index at the same time.