写点什么

演讲预告:大规模运营 Redis 的经验 @京东

2014 年 3 月 10 日

在 2013 年的 QCon 上海云计算分会场,京东云平台首席架构师刘海锋介绍了京东自主研发的分布式存储 – 京东文件系统(JFS),以及基于JFS 的统一数据中心存储策略。除了分布式存储之外,刘海锋的团队同时也负责开发一套分布式内存存储平台(RAM store platform),这套自主研发的快速分布式KV 存储系统可兼容Redis 数据类型、提供多租户统一服务、固有的集群模式、弹性可扩展、同步复制协议、常驻但不受限于内存、更强的持久性、更低的运维与硬件成本。

在2014 年的QCon 北京大会,刘海锋将根据他们开发这套系统的经验,分享大规模运营Redis 的经验,自研系统的设计思路,以及京东在数据存储方面的技术体系。InfoQ 中文站在会前对刘海锋进行了一次采访,邀请他对存储、Redis 等方向分享自己的观点。

嘉宾简介

刘海锋( @刘海锋 0011 ),京东系统技术部负责人、云平台首席架构师、以及京东架构委员会负责人。他领导存储、缓存、消息、服务框架团队,致力于打造坚实的系统技术平台,稳定支持京东业务的高速发展。

InfoQ:先谈谈你对存储系统、云存储、文件系统、数据库这一块当前发展趋势的看法吧。

刘海锋:数据量越来越大,业务需求也在增多。互联网业务后台需要不同的数据抽象——object/file/kv/tables……但多租户统一管理、服务化是重要的趋势。比如,给各个业务提供全托管的 RDBMS 服务、缓存服务、海量非结构数据存取服务,而不是上线一个业务就申请一些机器搭建存储。

InfoQ:用内存存储一般都是因为业务对读写性能有极高的要求。京东大规模内存存储平台现在主要服务于哪些业务?这些业务对读写的要求是什么样的?

刘海锋:非常多的在线业务都需要高速的缓存。比如每次京东购物下单、商品价格展示等等。

InfoQ:Redis 在官网上的定义是“高级 KV 存储系统”,特点在于速度快、数据结构丰富。你如何定义 Redis 这套系统?

刘海锋:高质量的开源软件。使用方便,速度快,数据类型丰富。用得最多的是 string, hashmap 两种。

InfoQ:基于 Redis 进行二次开发的过程中,有哪些需要避开的坑?有哪些是比较好的实践?

刘海锋:Redis 是高质量的开源软件。准确地说,是高质量的单机 KV 内存存储 server。但是要大规模应用到生产环境,需要做很多工作来满足公司业务需求。

最早是部署使用单个 Redis 实例,然后主从复制,集群分片,支持 presharding 的 Java 客户端,进而完善监控体系、配置中心,逐渐建设了一个平台来统一托管整个公司的 Redis 集群。

InfoQ:Redis 持久化如果持续进行磁盘写入会造成进程阻塞,这个问题如何解决?

刘海锋:RDB dump 其实是 fork 出一个子进程做的,写入并不会阻塞父进程。但是 fork 操作的执行开销较高,会 block 父进程不能及时响应请求。持久化方式是由各个业务自行选择的,有的选择没有持久化,有的选择 AOF,有的是 RDB 但是 dump 时间也是设置好的,比如凌晨几点等等。

InfoQ:是否研究过目前在 Alpha 版本的 Redis Cluster,有什么发现?

刘海锋:当然调研和测试过 Redis Cluster,现在还不是 production ready,所以我们在按照自己的方式搞定集群模式。

InfoQ:对于京东内存存储平台,下一步的开发计划是什么?

刘海锋:从今年年初开始,我们团队正在研发和实施京东的下一代内存存储平台 - JimStore。简单地说,JimStore 自主研发的分布式系统(dataserver 基于 Redis),实现多租户统一管理的、弹性扩展的 Redis 集群。

技术方面,分步骤做了一些事情:

通过分布式选举做精确的故障检测;自动的故障切换;增加磁盘存储,较冷数据会淘汰至磁盘,这样单实例就支持更大的数据量;自主研发集群模式,实现容量的透明扩展;整个平台多租户服务。

距第六届 QCon 全球软件开发大会(北京站)2014 开幕仅剩一个半月,大会演讲嘉宾已经几近确认完毕。大会的演讲内容在官网: http://www.qconbeijing.com ,以及 InfoQ 微博、微信公众帐号的最新播报: @InfoQ 、【infoqchina】不断更新。大会 9 折折扣期将在本月 26 日截止。如欲报名报请速点击报名页面

2014 年 3 月 10 日 00:114817

评论

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

直破性能瓶颈!阿里百万级Java性能调优解决方案全栈实录终开源

程序员小毕

Java 程序员 架构 面试 性能优化

QQ春节红包活动如何应对10亿级流量?看看大佬的复盘总结

数列科技

活动 系统运维 高并发优化 高可用系统的架构 高可用架构

限流篇,欣赏guava的RateLimiter

下雨喽

Java 设计 限流 架构· Guava

并发编程概览-从Lock和Synchronized说起

追风少年

Java 并发编程

工作流框架Activiti中表单的使用!详细解析内置表单和外置表单的渲染方式

攻城狮Chova

工作流 表单 6 月日更

助力初创企业加速升级,华为云初创扶持计划微光训练营南京站开营仪式成功举办

科技热闻

阿里P9分享:基于JDK 8 源码剖析

Java架构师迁哥

先立个Flag

追风少年

HarmonyOS IoT首著,走进万物互联的世界!

博文视点Broadview

Apache APISIX 开源 2 周年!

Apache APISIX 中国社区

开源 后端 网关 架构·

来自Linux老学员的经验分享,新生必看!

学神来啦

Linux 运维 安全 虚拟机

云钉一体应用创新:音视频如何带来灵活高效的协同体验

阿里云视频云

阿里云 实时音视频

如何快速分类整理电脑文件

TroyLiu

文件管理 文件整理 电脑文件 文件分类 快速整理文件

一文讲懂服务的优雅重启和更新

Kevin Wan

go 微服务 web开发 微服务治理 优雅停机

信息流动过程中的聚类问题

Ryan Zheng

牛掰!阿里首席架构师用7部分讲明白了Java百亿级高并发系统(全彩版小册开源)

Java架构追梦

Java 阿里巴巴 架构 学习笔记 百亿级并发架构设计

《漫画算法2》2021全新进阶版来袭!

博文视点Broadview

毕业设计So Easy:基于Java Web学生选课系统

不脱发的程序猿

Java web 毕业设计 学生选课系统

怒肝最新保姆级前端学习路线,速成贴心全面!

程序员鱼皮

CSS JavaScript Vue 前端 React

分布式缓存Redis原理与设计

Damon

6月日更

机器学习- 吴恩达Andrew Ng 编程作业技巧 -John 易筋 ARTS 打卡 Week 50

John(易筋)

ARTS 打卡计划

做了3年Java,靠着这份面试题跟答案,我从15K变成了30K

菜菜山

Java 程序员 架构 面试

Java 并发编程—— Semaphore

Antway

6月日更 6 月日更

Apache Calcite:异质数据源优化查询框架

余生

sql Apache Calcite

流程即代码:低代码 & 云研发 IDE —— Uncode

Phodal

ide 云开发 云研发

☕️【Java 技术之旅】深入分析JDK动态代理的分析(源码深入)

李浩宇/Alex

Java JVM 动态代理 6月日更 6 月日更

深入浅出,阿里多位大佬联合撰写—153页Java多线程小册

互联网架构师小马

Java 面试 多线程 内卷

五层验证系统,带你预防区块链业务漏洞

华为云开发者社区

区块链 智能合约 漏洞 可信 自免疫系统

搞定研发知识管理,你的企业就能跑快一步

华为云开发者社区

知识管理 华为云 devcloud 研发团队 研发知识

从原理到实践,手把手带你轻松get数仓双集群容灾

华为云开发者社区

容灾 集群 数仓 集群容灾 双集群

一口气了解【2021 阿里云峰会】重磅发布

阿里云视频云

阿里云

「中国技术开放日·长沙站」现场直播

「中国技术开放日·长沙站」现场直播

演讲预告:大规模运营Redis的经验@京东-InfoQ