写点什么

专家观点——唐福林谈 Redis 应用实践

  • 2011-11-02
  • 本文字数:847 字

    阅读完需:约 3 分钟

唐福林是新浪微博开放平台资深工程师,目前负责 t.cn 短链、用户关系、计数器等底层服务。他曾负责过包括新浪邮箱全文搜索在内的多个基于 Lucene 的垂直搜索引擎开发,以及新浪爱问和新浪播客的运维,对承载大数据量、高并发的互联网基础设施建设有丰富的经验。他在 QCon 杭州 2011 大会的开放平台专题做了名为《新浪微博开放平台中的Redis 实践》的讲座,并和参会者做了热烈的讨论。会后,InfoQ 中文站对唐福林做了采访。

InfoQ: 新浪微博的业务场景对缓存和存储提出了哪些要求?

根据微博的业务特点,主要有这么一些要求:
1. 海量存储;
2. 大量计算;
3. 对可靠性要求高;
4. 对速度要求高。

InfoQ:Redis 的主要优势在哪里?适用哪些场景?

主要优势个人觉得有 2 点:
1. 丰富的数据结构;
2. 高速读写。
所以适用于需要高速读写,而且需要比 k-v 更多的数据结构的地方。

InfoQ:Redis 有哪些不足?如何解决?

持久化是 Redis 的一个软肋,需要尽量避免。
还有一个问题就是,Redis 比较耗内存,尤其是数据量大的时候。而 Redis 又要求所有的数据必须都在内存里,这是一个矛盾,需要小心对待。

InfoQ:Redis 的调优存在哪些技巧?

Redis 从配置文件层面可以调的参数不多,只有 hash-max-zip-size 系列的参数调整可能对性能产生影响。如果想要达到特别的目标,那么就需要修改代码行为。
庆幸的是,Redis 的代码足够简单,二次开发定制都非常方便。

InfoQ:Memcache 和 Redis 是什么样的关系?

相辅相成吧。当前情况下,各有优缺点。不过个人觉得,长期看来,可以用 Redis 替代 Memcache。

InfoQ: 能否总结下在应用 Redis 时的经验教训?

主要有这么几个:

  1. 决定使用 Redis 之前,做好容量规划;
  2. 使用 Redis 的过程中,做好监控报警;
  3. 谨慎选择持久化方案,对可能造成的高延迟要有心理准备;
  4. 小心 Redis 的内存碎片。

InfoQ: 新浪微博在 Redis 方面下一步有哪些计划?

主要是继续推进 RedisCounter 的开发,还有一些存储列表类数据的 eRedis 的定制开发。

唐福林在 QCon 杭州 2011 大会上讲座的幻灯片可以在此下载,演讲视频稍后会在 InfoQ 中文站发布。

2011-11-02 20:176082

评论

发布
暂无评论
发现更多内容

Java的新未来:逐渐“Kotlin化,java接口菜鸟教程

Java 程序员 后端

Java笔记 IO —— 序列化和反序列化,面试大厂应该注意哪些问题

Java 程序员 后端

Java最新高频大厂面试集锦(附答案),看完老板哭着让我留下来

Java 程序员 后端

Java的四大面向对象编程概念,程序员必须要了解的知识点

Java 程序员 后端

Java类与类之间的继承关系,java算法面试代写

Java 程序员 后端

Java的Io模型你了解多少?RPC的通信Netty-Netty的底层是Nio-

Java 程序员 后端

Java程序员黄金年龄25-28岁,我们30+的人该去哪儿,linux资料

Java 程序员 后端

Java流程控制语句-分支结构(选择结构),java技术专家面试题

Java 程序员 后端

Java程序员经典面试题集大全 (二),最全SpringBoot学习教程

Java 程序员 后端

Java线程状态以及 sheep(),开发这么久这些问题都不会

Java 程序员 后端

java教程——泛型,java零基础教学视频

Java 程序员 后端

Java注解,mysql教程入门到精通

Java 程序员 后端

Java虚拟机 —— 类的加载机制,linux操作系统实用教程第二版课后答案

Java 程序员 后端

Java数组的拷贝 优化冒泡排序 二分查找,神策数据java面试题

Java 程序员 后端

Java日志体系(二) log4j 配置文件详解 缓存问题,mybatis基本工作原理

Java 程序员 后端

JAVA线程池源码之深入状态值分析| Java Debug 笔记,java面试题库百度云链接

Java 程序员 后端

Java线程池相关知识点总结,mybatis基础面试题

Java 程序员 后端

Java注解(1),headfirstjavapdf百度云

Java 程序员 后端

java程序员跳槽难吗?掌握这些经验,轻松入职阿里,rabbitmq的消息持久化原理

Java 程序员 后端

Java注解-一文就懂,mysql注入攻击原理

Java 程序员 后端

Java状态模式(State),马哥linux2020全套视频下载

Java 程序员 后端

java教程——线程,整合springboot集成实现动态刷新配置

Java 程序员 后端

java整理,springboot2精髓百度云

Java 程序员 后端

Java程序员被逼迫,挣着卖白菜的钱,操着卖白粉的心,java语言入门自学书

Java 程序员 后端

Java程序员裸辞两个月,面试阿里、美团,mysql视频教程百度云

Java 程序员 后端

Java框架总结,mysql教程视频

Java 程序员 后端

Java毕设项目-校园失物招领管理系统,HR的话扎心了

Java 程序员 后端

Java程序员拿80W年薪很难吗?这套阿里P7的进阶路线让我惭愧了

Java 程序员 后端

Java程序员:终于,在一个艰难而又轻松的工作日之后,java开发工程师常见面试题

Java 程序员 后端

Java模板工具类实现解析简单的表达式,kafka实战项目

Java 程序员 后端

java注解解析,10天拿到字节跳动Java岗位offer

Java 程序员 后端

专家观点——唐福林谈Redis应用实践_DevOps & 平台工程_唐福林_InfoQ精选文章