讲师回答 / 皮奇
rediscluster可以使用,但因为没有统一的proxy代理,查询效率上会打折扣,因此才会有 codis、twproxy等方案出现,而在一线互联网公司,会基于rediscluster上,自研一个proxy
2021-03-07
讲师回答 / 皮奇
仔细听,强调了需要有订单超时处理机制,避免占用库存长时间不支付的场景出现。而且之所以选择第三个方案原因为对比第一个方案,创建订单等写库耗时操作可以异步化,性能更占优势。
2020-07-12
讲师回答 / 皮奇
这个其实是个高空用的问题,属于运维层面要解决的事情,一般redis不是直连,而是通过vip连接到proxy,proxy再根究切片配置转发到redis实例,每个redis实例是一主多从,读写都在主,主挂了之后会自动通过raft算法选举出一个新的主,用于确保服务的高可用。市面上有比较成熟的解决方案,如codis,可以了解下。
2019-10-26
讲师回答 / 皮奇
同学你好,你的思路不错,可以继续去想下直接incrby改会有什么问题,老师提供的思路只是其中一个方案,真正场景实现肯定会有非常多的方案,需要大家自己思考。redis->eval本身就是执行lua脚本,redis->incrby理论上也可以防止边界条件的发生,不会造成超卖,因为incrby就实现了查询+修改的原子操作,但是有一点点小缺点就是,不能做到只要一超卖了就直接终止+1。
2019-10-01