主题:谈谈大型网站架构的一些关键技术 -- 季侯
共:💬43 🌺225
“我们也可以在订票操作中直接删除受影响的缓存项,直到有人再次查询的时候顺便更新这个缓存”
这操作的原则是拉,其实可以改成推。也就是说,数据库每次余票信息变化时,主动更新所有的memcached。而memcached本身只是被查询,它不能主动向数据库申请最新结果。这样就避免了数据库被频繁查询的问题。
牺牲的这点查询效率,对于大多数订票人影响应该可以忽略不计。其实原来的铁路订票系统也经常发生查询时有票,但实际定不上的现象。如果以前的订票系统就已经考虑了类似的问题,那么现在的数据库查询似乎不应该有这样的问题。可能问题出在他处。
- 相关回复 上下关系6
压缩 3 层
🙂你对memcached的全局锁理解有误 4 季侯 字561 2012-01-15 10:54:06
🙂那我这样的理解是否有问题呢? 1 代码ABC 字277 2012-01-16 04:03:11
🙂基本正确 季侯 字214 2012-01-24 20:40:28
🙂在牺牲一点查询效率的前提下,这样的问题应该可以解决。
🙂一般情况下我也会用推的方式 4 代码ABC 字1313 2012-01-15 20:02:47
🙂你这个方法和我们做法差不多。 3 季侯 字231 2012-01-15 11:04:20