Wir versuchen derzeit 5000 TPS Treffer für eine unserer API zu erreichen. Wir verwenden Mongo Atlas 3.2.12 und NodeJS v6.10.2, bei jedem Treffer trifft es DB mit 3 Suchabfragen. Es ist ein ELB vorhanden und hinter dem ELB befinden sich zwei Instanzen des Mediums vom Typ Amazon EC2. Mit dem Apache Benchmark Tool haben wir herausgefunden, dass es in einer Sekunde nur die 68 Hits behandelt.Benötigen 5000 gleichzeitige API-Treffer auf AWS mit Node.js
unten ist die Apache Benchmark Tool Ausgabe -
Document Length: 748 bytes
Concurrency Level: 1000
Time taken for tests: 116.294 seconds
Complete requests: 5000
Failed requests: 4274
(Connect: 0, Receive: 0, Length: 4274, Exceptions: 0)
Write errors: 0
Total transferred: 5440980 bytes
HTML transferred: 3830980 bytes
Requests per second: 42.99 [#/sec] (mean)
Time per request: 23258.823 [ms] (mean)
Time per request: 23.259 [ms] (mean, across all concurrent requests)
Transfer rate: 45.69 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 6 418 823.7 10 2448
Processing: 197 21032 7150.3 21848 35739
Waiting: 197 21031 7150.3 21848 35739
Total: 205 21450 7264.9 22052 36744
Percentage of the requests served within a certain time (ms)
50% 22052
66% 24953
75% 26697
80% 27814
90% 30272
95% 31804
98% 33428
99% 34534
100% 36744 (longest request)
EDIT: Wir sind bereits Multi-Cluster verwendet wird. Aber wir sind nicht in der Lage, das gewünschte TPS zu erreichen, das 2000 in einer Sekunde ist. Derzeit haben wir den Server von t2 medium auf m4-large aufgerüstet. Jeder Vorschlag wäre eine große Hilfe.
Bitte schlagen Sie die Änderungen und die Architektur vor.
Was ist Ihre Architektur? – Matt