3 ms·
I don't think end customer cares about why is his experience broken. Following a process that accepts things being broken, but shifts the responsibility doesn't
by xendo 9y ago
I don't think end customer cares about why is his experience broken. Following a process that accepts things being broken, but shifts the responsibility doesn't fix anything. Op's question is a great sign of ownership and customer obsession on his side.
The actuall solution is tough, but I think something can be improved. First of all I would try to measure and root cause the problem. It's hard for me to believe that the DB has 90% availability, I'm not aware of any commercial DB that's this bad. I would avoid creating shards of db, it will lead to hard to debug data inconsistencies. In this regard, cache with reasonable TTL is a better choice wince it guarantees eventual consistency of the data. I would also take a deep look into retry approaches you can take, something like exponential backoff with jitter and properly adjusted number of retries can greatly increase your availability.
- user5994461 9y agoIf it's impacting a public service with external clients, you should add that to the report, with an estimation of monetary and reputation loss. Customer issues are more likely to be noticed. The OP is the customer and the database team is the service provider. It's their role to provide a service working within specifications. That's how it works in large organization. Most of everything is internal services providing services to other internal services.