For example, the number of views in an article increases progressively according to each access. If you write data each time, the performance will be affected, and data may be lost in memcache alone. Using mysql, and memcache, I think that every write and read operation is on memcache. mysql creates a record table to save the name and field information of the table to be cached... for example, the number of views in an article increases progressively according to each access. If you write data each time, the performance will be affected, and data may be lost in memcache alone. Using mysql and memcache, I think that every write and read operation is on memcache. mysql creates a record table to save the name and field information of the table to be cached, and executes the scheduled task every five minutes, the read record table persists the memcache cache to the mysql table. I feel that the design is very poor. How do we design this type of write cache?
Reply content:
For example, the number of views in an article increases progressively according to each access. If you write data each time, the performance will be affected, and data may be lost in memcache alone. Using mysql and memcache, I think that every write and read operation is on memcache. mysql creates a record table to save the name and field information of the table to be cached, and executes the scheduled task every five minutes, the read record table persists the memcache cache to the mysql table. I feel that the design is very poor. How do we design this type of write cache?
Replace memcache with apsaradb for redis. All the counters are written to apsaradb for redis.
If ($ memcache-> inc ()/100 = 0) {$ mysql-> write ();}