写点什么

专家观点——唐福林谈 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:176065

评论

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

[High Performance TIDB] Leeson 01:TIDB整体架构---作业

远鹏

高性能 #TiDB

力扣题 - 29 解析大佬题解

Geek_663541

Java算法

安全系列之——RSA的公钥私钥有多少人能分的清楚?RSA的签名验签与加密解密如何使用公私钥?

诸葛小猿

加密解密 非对称加密 rsa 签名验签

领导发表的报告,你真的读懂了吗?

罗小龙

工作经验

糖果不需要意义

zhoo299

随笔杂谈 电影

Flink任务执行-3

小知识点

大数据 flink

Docker从入门到放弃---基础篇

书旅

Docker 容器

GrowingIO 数据采集 iOS SDK 测试实践

GrowingIO技术专栏

ios 数据采集 sdk

TypeScript 设计模式之发布-订阅模式

Geek_z9ygea

typescript 大前端 设计模式

CSS属性整理

kidd

LeetCode152-乘积最大子数组-medium

书旅

LeetCode 动态规划

带着面试题学习红黑树操作原理,解析什么时候染色、怎么进行旋转、与2-3树有什么关联

小傅哥

Java 数据结构 小傅哥 红黑树 2-3树

Docker 架构及工作原理

哈喽沃德先生

Docker 容器 微服务

不完满的选择,要不要放弃

zhoo299

随笔杂谈

学习源码的第八个月,我成了Spring的开源贡献者

程序员DMZ

spring 开源

不说再见

太以

疫情 毕业季 遗憾 大学

云上攻击太多怎么办?不妨试试这些工具

华为云开发者联盟

黑客 云服务 数据安全 华为云 企业上云

我与游戏相伴【自我访谈】

叶阳夏烟

系列 游戏 游戏观 访谈录

Docker入门与简单使用

Simon

Docker Linux

LeetCode题解:11. 盛最多水的容器,while循环双指针,JavaScript,详细注释

Lee Chen

大前端 LeetCode

ARTS打卡第一周(200511-200517)

老胡爱分享

ARTS 打卡计划 ARTS活动

MySQL中几种常见的日志

Simon

MySQL 日志

SecureBoost算法

soolaugust

学习 同态加密 secureboost

图解JavaScript——进阶篇(执行上下文、变量对象、作用域、作用域链、闭包、this、原型及原型链、事件循环等一把梭)

执鸢者

Java 大前端 函数执行 事件循环

Apache Pulsar 在 BIGO 的性能调优实战(上)

Apache Pulsar

MySQL容器化详细教程

Simon

MySQL Docker 容器

MySQL下的DB Link

Simon

MySQL

CDN百科11 | 担心纸质病例被洪水淹没?ECS+CDN+OSS如何助力医疗上云

阿里云Edge Plus

CDN 存储 云服务器

学习笔记2

Qx

学习

疫情按下快进键,电商抢占市场红利需可靠的助力

华为云开发者联盟

高并发 电商 华为云 流量 云服务器

常用SQL语句分享

Simon

MySQL sql

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