写点什么

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

评论

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

全场景智慧:新工业革命必须拥抱的晨曦

脑极体

oeasy教您玩转linux010204-figlet

o

区块链支付系统开发,数字货币支付承兑商APP模式搭建

13530558032

在5G智慧园区的“保龄球道”上,目标全垒打的征途

脑极体

dubbo应用级服务发现初体验

捉虫大师

dubbo 注册中心

区块链usdt承兑商支付系统开发 区块链应用开发

电微13828808271

USDT承兑支付系统开发

北京首台区块链政务终端亮相 一键“拉取”链上数据

CECBC

区块链技术

经济适用的企业内外网互动直播方案

fumingwang

音视频 直播 视频会议 企业应用

Flink保存点-17

小知识点

scala 大数据 flink

Docker 搭建 Redis Cluster 集群环境

哈喽沃德先生

redis Docker 容器 集群 redis cluster

实战中学习浏览器工作原理 — 之 HTTP 请求与解析

三钻

CSS Java 大前端 浏览器

Python 中的数字到底是什么?

Python猫

Python 翻译 PEP

数字货币钱包软件开发方案,区块链数字货币钱包源码

13530558032

iWebExcel 协同数据填报和在线分析平台

葡萄城技术团队

SpreadJS

有奖征文火热开赛,万元大奖等你来拿,准备好了吗?

InfoQ写作社区官方

程序员 开发者 音视频 随笔杂谈 RTC征文大赛

区块链+公共安全 大有可为

CECBC

区块链 安全

ARTS Week10

丽子

Python 函数为什么会默认返回 None?

Python猫

Python 编程

合约跟单系统开发,合约跟单软件定制开发

13530558032

Apache Pulsar 8 月月报:里程碑一个接一个

Apache Pulsar

大数据 云原生 Apache Pulsar 消息系统 消息中间件

深度解读:Apache DolphinScheduler 新架构与特性,性能提升2~3倍

代立冬

大数据 开源 工作流调度 开源社区

LeetCode题解:84. 柱状图中最大的矩形,循环+双指针暴力,JavaScript,详细注释

Lee Chen

大前端 LeetCode

凤凰交易所 全球首个多元化生态交易平台震撼来袭

InfoQ_967a83c6d0d7

从每秒6000写请求谈起

架构师修行之路

程序员 架构师 高并发系统设计

Python 为什么没有 void 关键字?

Python猫

Python 编程

macos主流工作开发套件指南

久违

macos Docker 大前端 自动化部署

LeetCode题解:239. 滑动窗口最大值,双循环暴力,JavaScript,详细注释

Lee Chen

大前端 LeetCode

Centos7 mongodb安装全攻略

红泥

mongodb

缓存与数据库一致性问题深度剖析

Zhendong

数据库 缓存 秒杀系统

芯片破壁者(十五):仙童半导体和“八叛逆”所缔造的“硅谷模式”

脑极体

学习笔记丨结构体中的内存管理

Liuchengz.

c Linux 学习

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