zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Redis开发与运维. 1.4 用好Redis的建议

2023-03-09 22:20:15 时间

1.4 用好Redis的建议

1.?切勿当作黑盒使用,开发与运维同样重要

很多使用Redis的开发者认为只要会用API开发相应的功能就可以,更有甚者认为Redis就是get、set、del,不需要知道Redis的原理。但是在我们实际运维和使用Redis的过程中发现,很多线上的故障和问题都是由于完全把Redis当做黑盒造成的,如果不了解Redis的单线程模型,有些开发者会在有上千万个键的Redis上执行keys *操作,如果不了解持久化的相关原理,会在一个写操作量很大的Redis上配置自动保存RDB。而且在很多公司内只有专职的关系型数据库DBA,并没有NoSQL的相关运维人员,也就是说开发者很有可能会自己运维Redis,对于Redis的开发者来说既是好事又是坏事。站在好的方面看,开发人员可以通过运维Redis真正了解Redis的一些原理,不单纯停留在开发上。站在坏的方面看,Redis的开发人员不仅要支持开发,还要承担运维的责任,而且由于运维经验不足可能会造成线上故障。但是从实际经验来看,运维足够规模的Redis会对用好Redis更加有帮助。

2.?阅读源码

我们在前面提到过,Redis是开源项目,由于作者对Redis代码的极致追求,Redis的代码量相对于许多NoSQL数据库来说是非常小的,也就意味着作为普通的开发和运维人员也是可以“吃透”Redis的。通过阅读优秀的源码,不仅能够加深我们对于Redis的理解,而且还能提高自身的编码水平,甚至可以对Redis做定制化,也就是说可以修改Redis的源码来满足自身的需求,例如新浪微博在Redis的早期版本上做了很多的定制化来满足自身的需求,豌豆荚也开源基于Proxy的Redis分布式实现Codis。