Another issue using websockets over http in this case, is it defers the abuse protections completely to the application servers (or custom proxies) meanwhile hogging whole tcp streams in load balancers. In existing http infra, load balancing and resource abuse protection can happen in multiple tiers sparing the application software (and more specifically relay developers).
That said I'd argue almost all web abuse protections are handled way before the client request even makes it to the application server. And it's done very quickly.
Login to reply
Replies (1)
totally agree. websockets are annoying. but tcp connections are cheap and as you said you can quickly handle bad actors once the channel is open.
to solve this specific problem i would do something like
- one relay for read, heavy caching to reflect data access patterns in vine client
- one relay for search
- fanout to the proper relay a single api gateway tier
- scale every layer independently
- write a sane client