Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If you have 1m clients making DB requests and are hitting performance constraints you could do any of:

  1. Add more ram, CPU, etc to the DB host
  2. Create DB read replicas for higher read volume
  3. Shard the DB (reads and writes)
  4. Offload logic to stateless clients, who you can easily scale horizontally
So option 4 is reasonable if you don't want to or can't do the other options.


I would need to know a little more about those 1M requests before making any of your points valid. If 1M are solely reads, you can do real-time transient offload onto Redis without calling it cache and breaking your bank.


True. I would rephrase option 2 as "cache and/or replicate your query results somewhere".




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: