I'm trying to work, I can use the caching layer in my web application or not (and if so, what technology).
Our web application has both an internal and external component, and I would like, if possible, to add a cache level in memory between the web application and the database level for the public external component. We are suffering from problems with database performance, and I want to relieve the stress from the database as much as possible (plus make our public site with a rapidly decoupled component).
The external component offers a postal code location finder. For example, enter a zip code for an area, and each time you get 50 results (data is relatively outdated) that the database may change (new record added 1 per day), so I thought that if the cache level is possible, then I can do invalid cache but then reload it (unlike the template in the cache).
Question:
- Based on my review above, for example, mapping zip codes for multiple records (JSON or serializable objects), I can use the cache level to store data in memory (total data size ~ 100 MG, heaps of RAM for free) and extract several records for each mail code based on caching technology "data warehouse with key values"?
- If the number 1 is higher, it is possible that the caching technology, we use the external interface of PHP, the Zend server has an im-memory cache, but it does not look mature, would I prefer Redis over Memcached for caching, thoughts?
- If preloading the cache at night is not achievable, thoughts on a better approach to using the cache?
- If in-memory caching is not at all achievable (depending on my requirement), I should look at opmtiising DB (this is SQL Server), for example. load lookup table into SQL cache when SQL Server starts?
- Other, is something missing?
Thank you, all comments are welcome!
Greetings
source share