At that qps Redis has 2 microseconds per request.
I agree it caches well but your proposed architecture is definitely not production quality.
On my machine 5 concurrent requests, at 100 items, it can do ~6 500 000 items per second, at 300, 11 000 000 per second, and it kind of caps out at that. Even with 1 concurrent connection, at 600 items, you get 6M per second.
Not using attempted magic like Firebase would also fix the problem where the home page transfers 9 MB of data from Firebase on top of the 1 MB JavaScript, which appears to be… their entire database or something?? Accessible to the frontend??? Censored excerpt from that response:
"email":{"stringValue":"[email protected]"},"fechaDisponible":{"integerValue":"1527483600000"},"identification":{"nullValue":null},"key":{"stringValue":"1527560309061"},"listaNotificaciones":{"arrayValue":{"values":[{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"[email protected]"},{"stringValue":"ivXXXXXXXXxd@gmail.
Also appears to expose, for each campaign, the poster’s bank name and date of birth.And wastes a bunch of various resources making separate requests to a currency conversion service for each amount, as others have noted. And requests /null and /undefined. This might be the most irresponsible development I’ve ever seen.
TLDR; Horrible architecture decisions like this can be very costly.