Explain how you would implement caching at different layers of a web application to reduce database load and improve response times.