Ich betreibe einen Aerospike-Cluster in Google Cloud. Nach der Empfehlung auf this post habe ich auf die letzte Version (3.11.1.1) aktualisiert und alle Server neu erstellt. In der Tat, verursacht diese Änderung meines 5-Server in einer viel geringeren CPU-Last zu betreiben (es vor rund 75% Last war, jetzt ist es auf 20%, wie zeigt in der Grafik unten:Aerospike-Fehler: Alle Batch-Warteschlangen sind voll
Weil empfehlen
All batch queues are full
ich diesen discussion about the topic gefunden, die sich ändern. dieser geringen Last, ich die Clustergröße auf 4 Servern zu reduzieren entschieden Als ich das tat, meine Anwendung gestartet wird folgende Fehler erhalten Parameter batch-index-threads
und batch-max-unused-buffers
mit dem Befehl
asadm -e "asinfo -v 'set-config:context=service;batch-index-threads=NEW_VALUE'"
ich viele Kombinationen von Werten (Batch-Index-Threads mit 2,4,8,16) und keiner von ihnen hat das Problem gelöst, und auch die Änderung der batch-index-threads
param versucht . Nichts löst mein Problem. Ich bekomme weiterhin den All batch queues are full
Fehler.
Hier ist meine aerospace.conf relevanten Informationen:
service {
user root
group root
paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
paxos-recovery-policy auto-reset-master
pidfile /var/run/aerospike/asd.pid
service-threads 32
transaction-queues 32
transaction-threads-per-queue 4
batch-index-threads 40
proto-fd-max 15000
batch-max-requests 30000
replication-fire-and-forget true
}
ich 300GB SSD-Festplatten auf diesen Servern verwenden.
Ich habe den Verdacht, dass Sie die Disk IOPS Grenze treffen. Wenn Sie das Limit erreichen, wird der Batch-Vorgang Zeit auf Datenträger IO verbringen. Dies reduziert die CPU-Auslastung, da Aerospike nicht viel Arbeit leisten kann.Können Sie Details Batch-Benchmarks aktivieren, indem Sie Folgendes tun: asadm -e "asinfo -v 'set-config: Kontext = Namespace; ID = Test; Enable-Benchmarks-Batch-Sub = True'". Es wird Details darüber geben, wo der Stapelaufruf die meiste Zeit verbraucht. – sunil