How would you design systems that handle high traffic using caching, load balancing, and asynchronous processing?