【SDCC讲师专访】百度运维部高级工程师胡东旭:BDRP的底层设计以及核心模块的研发...

本文主要是介绍【SDCC讲师专访】百度运维部高级工程师胡东旭:BDRP的底层设计以及核心模块的研发...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

由CSDN举办的SDCC 2016 将于3月18-19日在上海隆重召开。届时,百度运维部高级工程师胡东旭将在数据库核心技术与实战应用峰会中带来《Redis在百度的运用实战》的主题分享,欢迎大家前来现场聆听【点击这里抢票】。


图片描述

百度运维部高级工程师 胡东旭

百度运维部高级工程师,主要负责地图/糯米的基础组件研发(Redis,Nginx等)。有丰富的Cache运维经验,曾主导百度BDRP(Baidu Distributed Redis Platform)的底层设计以及核心模块的研发–目前BDRP已在整个百度公司内得到广泛使用。

以下为CSDN对胡东旭先生的个人专访内容,下面就让他分享BDRP的底层设计以及核心模块的研发,和如何才能成为一名优秀技术人。以下为专访内容:

CSDN:首先请您简单介绍下自己、公司以及目前所负责的领域。

胡东旭:我是百度运维部高级工程师胡东旭,13年毕业于武汉理工大学,加入百度运维部后主要负责地图以及糯米的Cache存储(Redis、Mognodb等)运维以及研发、目前专注在产品线的前端接入方向(速度优化、防劫持等)。

CSDN:您担任百度运维部高级工程师期间,给您留下最深刻的人或事有哪些呢?

胡东旭:糯米是14年Q1割接到百度机房,稳定性由最开始接手时候的两个9都不到做到了现在4个9,当中离不开大家的努力。组织上成立了糯米运维保障执行团队,每次大型活动,相关运营/RD/QA/OP都会齐心协力为活动保驾护航。

CSDN:据我了解,您曾主导百度BDRP( Baidu Distributed Redis Platform)的底层设计以及核心模块的研发,在研发期间遇到了哪些技术难点和挑战?

胡东旭: 1. 技术难点其实也是由糯米活动所引发的,背景是:糯米活动组织越来越频繁,并且流水也逐渐升高,那么在活动期间的峰值流水很可能是平日期间的5-10倍,那么要在如此强度下仍然保障可靠的稳定性,就需要服务有高效的止损手段/预案。而BDRP之前是没有考虑到止损效率,而运维部要求这一层的止损能力要在1分钟内完成,这一环如果不能完成,那么糯米的止损能力就相当于缺了一条腿。

2.因而对于BDRP而言,如何做到1分钟止损,这本身就是一个不小的挑战。

CSDN:那么,您能具体和我们谈谈BDRP具体应用在哪些场景下?他们实现的原理又是什么?

胡东旭: 1. BDRP应用的场景十分之多,一般分为两种类型,一种是Cache类,例如地图的索引信息则存放在Redis内,另一类是当作存储类型使用,例如糯米的团单详情信息是存在Redis内的。

2.当作Cache使用的,一般多为QPS高,数据频繁更新的服务,而且多半都会利用Redis的key淘汰策略。

3.而当作存储类型使用的,一般是看中Redis较为轻量级,易上手,比别的NoSQL支持的数据结构类型更多,并且开发模式比使用MySQL更加简易。

CSDN:据我了解,您对Cache运维有着丰富的经验,那么您能和我们具体谈谈吗?

胡东旭: 1.Cache运维我主要还是说Redis。

2.Redis的运维其实主要需要关注这么几个方向:

(1)在RD调研Cache/存储选型的时候,就介入进来,或者说你给RD有好的准入标准,可供评估。(好的准入,是为了让RD弄明白他的项目中需要哪种合适的Cache/存储);
(2)其次,对Redis而言,所有的常用配置,基本原理,得做到心中有数;
(3)Cache运维并不是无脑式操作,你要做到心中有数,平日抽空多读源码;
(4)除了原理以外,运维上也有许多事情需要完成的,例如监控以及预案。一定要确保监控项覆盖全面,但是从另外一个角度来说,想100%覆盖所有监控,这个的确不容易,所以就需要有应对故障的策略/预案,并且定期频繁演练,确保你的预案足够健壮。

CSDN:您近期还会关注哪些技术热点?
胡东旭:从底层而言,主要还会关注Docker等容器化技术;从前端技术而言,还会关注用户访问速度优化等topic,例如google的AWP技术等等。当然,这些需求其实都源于产品线。我更加推崇的是离业务更近一点,带着产品线的需求而做技术/架构的变革,而不仅仅只是为了追求某项技术而研发。

CSDN:您认为作为一名优秀的技术人应该具备哪些素质?

胡东旭: 1.嗅觉敏锐:你必须得时刻关注产品线需求,开源社区的热门技术/国外优秀的技术前沿论文。

2.自驱力:时刻给自己充电,要不就落后于他人。

3.团队协助:很多项目是需要一个团队,甚至多个团队一些协助完成的,一个单兵能力再强也有很大的局限性。

4.共享信息与乐于助人:有好的idea/技术,不要私藏,要学会分享,发扬出来。

5.敢于挑战他人以及接受别人的挑战:在挑战中不断成长,才不会当井底之蛙。

6.不盲从:以数据说话。

CSDN:在本次SDCC数据库峰会上分享的话题是?

胡东旭:我本次在峰会上分享的题目是关于BDRP的架构原理以及实际运用场景。

CSDN:您最期待在本次SDCC数据库峰会上听到哪些内容?

胡东旭:我希望听到更多业内对数据库应用方面的实践,比如像阿里的RDS等等。


SDCC的精彩正在继续,2016年3月18日-19日,数据库核心技术与实战应用峰会、互联网应用架构实战峰会将在上海召开,我们静候您的到来。大会官网(含购票)

这篇关于【SDCC讲师专访】百度运维部高级工程师胡东旭:BDRP的底层设计以及核心模块的研发...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/730709

相关文章

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

python中time模块的常用方法及应用详解

《python中time模块的常用方法及应用详解》在Python开发中,时间处理是绕不开的刚需场景,从性能计时到定时任务,从日志记录到数据同步,时间模块始终是开发者最得力的工具之一,本文将通过真实案例... 目录一、时间基石:time.time()典型场景:程序性能分析进阶技巧:结合上下文管理器实现自动计时

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

kotlin中的行为组件及高级用法

《kotlin中的行为组件及高级用法》Jetpack中的四大行为组件:WorkManager、DataBinding、Coroutines和Lifecycle,分别解决了后台任务调度、数据驱动UI、异... 目录WorkManager工作原理最佳实践Data Binding工作原理进阶技巧Coroutine

Java的volatile和sychronized底层实现原理解析

《Java的volatile和sychronized底层实现原理解析》文章详细介绍了Java中的synchronized和volatile关键字的底层实现原理,包括字节码层面、JVM层面的实现细节,以... 目录1. 概览2. Synchronized2.1 字节码层面2.2 JVM层面2.2.1 ente

MySQL中Next-Key Lock底层原理实现

《MySQL中Next-KeyLock底层原理实现》Next-KeyLock是MySQLInnoDB存储引擎中的一种锁机制,结合记录锁和间隙锁,用于高效并发控制并避免幻读,本文主要介绍了MySQL中... 目录一、Next-Key Lock 的定义与作用二、底层原理三、源代码解析四、总结Next-Key L

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from

nginx-rtmp-module模块实现视频点播的示例代码

《nginx-rtmp-module模块实现视频点播的示例代码》本文主要介绍了nginx-rtmp-module模块实现视频点播,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录预置条件Nginx点播基本配置点播远程文件指定多个播放位置参考预置条件配置点播服务器 192.

MySQL中的MVCC底层原理解读

《MySQL中的MVCC底层原理解读》本文详细介绍了MySQL中的多版本并发控制(MVCC)机制,包括版本链、ReadView以及在不同事务隔离级别下MVCC的工作原理,通过一个具体的示例演示了在可重... 目录简介ReadView版本链演示过程总结简介MVCC(Multi-Version Concurr