2 ms·
Instead of: web app -> haproxy -> mysql Doing this: web app -> backend app -> haproxy
by peterwwillis 10y ago
Instead of:
web app
-> haproxy
-> mysql
Doing this:
web app
-> backend app
-> haproxy
-> mysql
It allows a dedicated application layer to handle database communication/changes in a more intelligent way than a proxy/load balancer can. Helps account for scaling issues, batches transactions, retries on failure/inconsistency, throttles, caches, advanced logic, schema/application change resiliency/consistency, network segregation, restricts operations, etc etc. Nobody seems to implement it unless there's a wide range of applications with different needs, or when things break.