4 ms·
Not just you, but if it works for them, that's completely fine. But there are many ways to achieve 20K RPS without this type architecture and especially withou
by colesantiago 5y ago
Not just you, but if it works for them, that's completely fine.
But there are many ways to achieve 20K RPS without this type architecture and especially without k8s, for less than $1,500.
- bob1029 5y ago>20k RPS. If this metric is what you are chasing, there are ways to reliably break 1 million RPS using a single box if you don't play the shiny BS tech game. The moment you involve multiple computers and containers, you are typically removed from this level of performance. Going from 2,000 to 2,000,000 RPS (serialized throughput) requires many ideological sacrifices. Mechanical sympathy (ring buffers, batching, minimizing latency) can save you unbelievable amounts of margin and time when properly utilized.
- nine_k 5y agoI frankly don't see where containers could lower the performance. Basically a container is a glorified chroot. It has the same networking unless you asked for isolation, then packets have to follow a local (inside the host) route. It has exactly no CPU or kernel interface penalty. Maybe you wanted to say about container orchestration like k8s, with its custom network fabric, etc.
- bob1029 5y agoEven loopback is significantly slower than a direct method invocation.
- krageon 5y ago> I frankly don't see where containers could lower the performance. Have you seen most k8s deployments? It's not the containers, it's the thoughtspace that comes with them. Even just using bare containers invites a level of abstraction and generally comes with a type of developer that just isn't desirable.
- fomine3 5y agoSo it's not due to container, but nowadays "container" in prod tend to mean k8s or similar clustering.