auf der Suche nach etwas Hilfe in ElasticCache Wir verwenden ElasticCache Redis zu einem Resque-basierten Qing-System ausführen. Dies bedeutet, es ist eine Mischung aus sortierten Sätzen und Listen. bei normalem Betrieb ist alles in Ordnung und wir sehen gute Antwortzeiten & Durchsatz. CPU-Level liegt bei 7-10%, Get + Set-Befehle liegen bei 120-140K. (Alle Metriken basieren auf Cloudwatch.) Aber - wenn das System einen (milden) Datenburst erlebt und mehrere K-Nachrichten in die Warteschlange stellt, sehen wir, dass der Server fast nicht mehr reagiert. die CPU ist steady @ 100% Auslastung (Metrik sagt 50, aber es ist mit einem einzigen Kern) Anzahl der Betrieb fällt auf ~ 10K Reaktionszeiten sind langsam zu einer Frage von Sekunden pro Anfrage Wir würden erwarten, dass auch wenn die Die CPU wurde in einem solchen Ausmaß geladen, dass der Durchsatzpegel gleich geblieben wäre. Dies ist der Fall, wenn Redis lokal ausgeführt wird. redis kann die CPU nutzen, aber der Durchsatz bleibt hoch. Da es nativ Single-Cored ist, erscheint keine Kontextumschaltung. AFAWK - wir auferlegen keine Grenzen oder Persistenz, keine Replikation. Verwenden der grundlegenden Konfiguration.hohe CPU in Redis 2.8 (elasticache) cache.r3.large
die Größe: cache.r3.large wir sind noch periodischen snapshoting mit
Wie ist Ihr Gedächtnis? Wenn redis ausgetauscht werden muss, kann es vorkommen, dass sich die redis auf zwei Sekunden pro Anfrage verlangsamt. Wir melden einen Alarm, wenn der freie Systemspeicher unter 8% ist. Dies hängt nicht mit den Redis-Limits zusammen, die Sie möglicherweise eingerichtet haben. –
Das neue LUA-Pop-Skript fehlt ein LIMIT: https://github.com/gresrun/jesque/issues/101 – user3041539