中国移动云能力中心 Iaas 产品部软件开发工程师陈焱山:社区始于连接,也成就于连接...

社区始于连接,也成就于连接

——陈焱山

ApacheCon 是 Apache 软件基金会(ASF)的官方全球系列大会。作为久负盛名的开源盛宴,ApacheCon 在开源界备受关注,也是开源运动早期的知名活动之一。

早在 1998 年,在 ASF 成立之前,ApacheCon 已经吸引了各个层次的参与者,在 300 多个 Apache 项目及其不同的社区中探索 "明天的技术"。也是在这一届上,开发 HTTPD 服务的开发者们欢聚一堂,并决定成立 Apache 软件基金会。

ApacheCon 每年举办一次,一般在欧洲或北美举行,是 Apache 开发者们线下交流、讨论、见面的绝佳机会,也是分享想法、思想激荡的难得的场合。通过动手实作、主题演讲、实际案例研究、培训、黑客松活动等方式,展示 Apache 项目的最新发展和新兴创新。

今年,为了更好地服务于亚太快速增长的 Apache 用户和贡献者,ApacheCon 组委会以及 Apache 软件基金会很高兴地宣布,首次针对亚太地区时区的 ApacheCon 在线会议 ApacheCon Asia 大会将于 2021 年 8 月 6 日至 8 日在线举行。

为了让大家进一步了解开源、了解 ApacheCon Asia,SegmentFault 思否将采访部分 Track Chair 或大会讲师,让你了解大会筹备的背后,和这些专家大牛们的故事。

今天,我们为大家带来的是,我们对中国移动云能力中心 Iaas 产品部软件开发工程师陈焱山的访谈。

以下为 SegmentFault 思否对陈焱山的访谈内容:

关于陈焱山

陈焱山,当前就职于中国移动云能力中心IaaS产品部。一直从事分布式存储软件架构设计及开发工作,深度参与了移动云的建设发展过程。在分布式存储领域拥有丰富的开发实战经验,目前移动云已经为全网用户提供EB级规模存储。个人当前主要关注于对象存储交付编排及流量治理建设,正在思考基于 Apache APISIX 七层网关实现对象存储流量治理工作,实现架构进一步升级。


陈焱山初次接触开源的故事

说来也巧合,自己跟Apache也是有缘,第一次接触开源也是Apache下的项目Hadoop和HBase项目,当时也是采用HBase作为我们对象存储产品的元数据存储引擎。

当时我们的对象存储EOS还处在第一代自研中,其中就采用了基于NoSQL数据库HBase来实现元数据的列式KV存储,在计算服务方面则采用MapReduce。期间我主要负责元数据存储引擎的开发及优化工作。与此同时,我们还维护着一个300多节点的线上集群。随着用户业务量的增加,系统也出现了一些问题,其中对我来说印象最为深刻的就是频繁写删场景下HBase元数据逐渐成为系统访问瓶颈的问题。由于Hbase默认采用字典序,因而当向同一个对象存储桶中频繁写入或删除时对象时,后台承载的这个Region所在的HRegionServer节点就会出现读写访问热点问题,频繁执行Major Compact或者Region Split操作,然而这些后台动作不仅要消耗大量的主机资源,同时还会阻塞IO请求,直接影响到用户服务。最明显的感受就是平均时延飙升,甚至出现请求响应超时。为了解决这个性能瓶颈,我们通过对元数据Key的Hash化改造和HRegion数量的预规划分配,最终解决了HRegionServer的热点问题,系统读写性能提升了80%。虽然说后来随着时间的推移,我们产品技术栈进行了切换,但是研究HDFS和HBase这段经验,至今都让我受益,同时也让我对开源文化有了一个新的认识。


在参与开源并且为 Apache 社区做贡献的时候,个人及公司有哪些收获?

开源其实就是对共享理念的一种继承和发展。对我个人而言,参与开源,参与Apache优秀的开源项目,不仅能够学习到优秀的代码,同时还能学习到一些优秀的架构设计思想。通过横向对比多个开源项目,你就会发现一些设计上的共性问题,能够在今后的系统架构设计时尽可能规避已知风险,优化架构设计。同时,我认为参与社区贡献还是一个自我能力展现的窗口,能够提升自己个人品牌和口碑,能够认识一些志同道合的人和业内大佬,进一步提升自己。

众人拾柴火焰高,对于公司来说,参与开源带来收获主要体现在两方面:一是能够利用社区人才的力量不断打磨好自己的产品,为公司带来实质性的收益;二是能够扩大公司在业界的影响力和品牌价值推广。我们的EOS对象存储同样也是基于开源,但同时我们也秉持着源于开源,回馈社区的理念,打磨好自身产品的同时,同步构建好生态周边。因为只有在开源社区不断投入,才能吸引到更多的开发者参与进来,形成正向增益,实现多赢的局面。


陈焱山理解的“The Apache Way”?

我心目中的“Apache Way”是一个拥有开放包容、共享协作的社区文化,也就是Apache社区所倡导的Community Over Code社区大于代码文化。开放包容,我的理解是社区完全是Open的,既没有时间界限也没有地域界限,每个人都可以以平等自由的身份参与到社区项目中,都能为社区项目贡献自己的聪明才智和力量。在这里,你的提交可以是一个大的功能feature,同样也可以小的bug fix ,或者文档撰写,或者技术分享等等。总之,一切都是有益于社区文化发展的都是备受欢迎和推崇的。共享协作,社区始于连接,也成就于连接 。正是因为开源社区的存在,才使得一群志同道合的人能够愿意在一起共享协作,拥抱社区,一起去做一件有情怀,有意义的事情。


陈焱山与 ApacheCon Asia

我本次分享主题是 Apache APISIX 在中国移动公有云对象存储 EOS 中的应用与实践,属于 API/微服务技术相关议题。首先从整体上介绍了中国移动公有云建设过程及对象存储产品发展演进历程,然后阐述了我们为什么选择 Apache APISIX作为我们的负载均衡网关,同时还分享了Apache APISIX在移动云EOS产品中的最佳实践和应用,期间谈到了如何利用Apache APISIX帮助我们解决实际生产问题,同时我们又基于此做了哪些实际工作,最后对我们未来的架构演进做了一些规划说明。

我希望听众听完我的分享之后,首先是大家能对中国移动有一个更全面的认识,认识到中国移动在技术能力内化道路上所做的努力,认识了解“移动云”这个云服务品牌;同时,也希望大家能够进一步了解并加入到Apache APISIX这个优秀的开源网关项目中,如何用APISIX正确处理传统的南北向流量以及服务间的东西向流量场景。


和我们一起加入 ApacheCon Asia!

开放包容,共享协作,一起来参加ApacheCon Asia这场技术盛宴吧!

关于中国移动云能力中心

中国移动云能力中心,对外也称“中移(苏州)软件技术有限公司”,是中国移动通信集团2014年注资成立的全资子公司,公司定位为云设施构建者、云服务提供者、云生态汇聚者,三年内推动中国移动云业务市场份额进入国内云服务商第一阵营。“移动云”品牌也充分发挥了云网一体、贴身服务、随心定制、安全可控优势,打造5G时代的“你身边的智慧云”,为行业数字化转型发展提供“强引擎”。

目前我们对象存储EOS团队一直在持续招人中,感兴趣的同学可以通过邮件联系我chenyanshan@cmss.chinamobile.com,期待你的加入。

另外,我们团队所在的IaaS产品部多个岗位也在持续招聘中,分布式存储/云原生/虚拟化/边缘计算/内核等多个方向均开放有研发及架构师等多个职位!欢迎有意者联系我。

ApacheCon Asia 完整议程地址:

https://www.apachecon.com/acasia2021/zh/sessions.html

即刻注册地址:

https://hopin.com/events/apachecon-asia-2021

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZGY的Excel特征提取器初期版本完成

其实这个初期版本已经基本上把他要的功能都实现了,呵呵 他的要求是批量转Excel,把所有用黄色标出的单元格所在的列拷到一个新文件中 其实底层很简单,界面做了倒有一会,还是一如既往的喜欢SWT啊~ 附上Java利用Apache POI进行Excel文…

阿里大佬推荐初学者练习的 Java 开源项目

对于JAVA的新手来说,需要结合着相关书籍的学习和开源项目一起,才能达到比较好的效果。 在此推荐一些轻量级适合入门的JAVA开源项目,希望对题主的学习有所帮助。 项目名称:springboot-learning-example项目简介:sprin…

真·抬头发票!| 今日最佳

全世界只有3.14 %的人关注了青少年数学之旅(图源迷惑行为大赏,侵权删)

老歌新唱--使用VB6开发的ActiveX实现.NET程序的混淆加密

代码下载地址:http://files.cnblogs.com/wuhuacong/VBActiveX.rar 由于存在一下几种特点:1、.NET程序反编译容易,而使用一些混淆工具会导致有些程序不能运行2、VB6开发ActiveX控件,那叫一个快,VB代码也不是很容易被反编…

设计模式之适配器

适配器模式介绍介绍适配器模式的作用就是把原本不兼容的接口,通过适配修改到统一的过程,使得用户方便使用。在实际工作中, 有时候我们需要把各个业务线的各种类型服务做统一的包装,再对外提供接口进行使用。适配器模式要解决的主要…

qsort(bsearch,lsearch)—标准库排序,查找

2019独角兽企业重金招聘Python工程师标准>>> //对字符串排序 #include<iostream> #include<cstdlib> #include<string.h> #define N 8 using namespace std; int compare(const void *a,const void *b); int main(void) {int i;char s[8][10] {&q…

中科大博士写外挂被抓,非法牟利300多万!

全世界只有3.14 %的人关注了青少年数学之旅近日&#xff0c;扬州警方破获一起中科大博士伙同他人在网上销售外挂软件非法牟利超过 300 万的案件。2016年6月&#xff0c;北京某游戏公司发现网上有款名为“冰焰”的外挂软件大量销售&#xff0c;给他们的网游造成了巨大损失这款外…

C# WPF MVVM项目实战(进阶②)

这篇文章还是在之前用Caliburn.Micro搭建好的框架上继续做的开发&#xff0c;今天主要是增加了一个用户窗体ImageProcessView&#xff0c;然后通过Treeview切换选择项之后在界面显示不同效果的图片。01—重要的知识点本篇内容基于CM框架编写&#xff0c;涉及以下知识点&#xf…

浏览器要是能这么做就好了

原文地址&#xff1a;http://www.laaan.cn/?p994 之前和搜狗浏览器的开发团队做过一些合作。主要是用户教育方便的事。需要他们给我开几个接口&#xff0c;让flash与浏览器通讯。都是很谨慎的。不过后来想一想&#xff0c;要是搜狗浏览器能开放一些接口供js或flash调用该有多好…

腾讯架构师讲解Java接口的继承与抽象类

在实施接口中&#xff0c;我们利用interface语法&#xff0c;将interface从类定义中独立出来&#xff0c;构成一个主体。interface为类提供了接口规范。 在继承中&#xff0c;我们为了提高程序的可复用性&#xff0c;引入的继承机制。当时的继承是基于类的。interface接口同样可…

说说大型高并发高负载网站的系统架构

By Michael 转载请保留出处&#xff1a;俊麟 Michael’s blog (http://www.toplee.com/blog/?p71) Trackback Url : http://www.toplee.com/blog/wp-trackback.php?p71 我在CERNET做过拨号接入平台的搭建&#xff0c;而后在Yahoo&3721从事过搜索引擎前端开发&#xff0c;…

java基础之java输入输出语句

1、使用Scanner 使用时需要引入包importjava.util.Scanner;首先定义Scanner对象 Java基础学习&#xff1a;java输入输出语句 比如&#xff1a; Java基础学习&#xff1a;java输入输出语句 2、使用BufferedReader 用前需要引入importjava.io.Reader; Java基础学习&#xff1…

自制WiFiPineapple

什么是WiFiPineapple&#xff1f;关于这个问题&#xff0c;相信各位心里都有自己的答案&#xff0c;这里引用下radiowar的介绍&#xff1a;自从2008开始&#xff0c;WiFi PineApple成为了最受欢迎的安全测试设备&#xff0c;在开源无线安全审计软件社区的支持&#xff0c;WiFiP…

全世界的狗都没有“生殖隔离” | 今日趣图

全世界只有3.14 % 的人关注了青少年数学之旅动物界的“一拳超人”雀尾螳螂虾它有一双力大无比的铁拳出拳速度在五十分之一秒内最大速度可达80km/h产生约60kg的冲击力威力足以匹敌小口径手枪子弹&#xff08;图源冷知君&#xff0c;侵权删&#xff09;如何把清水一秒变可乐&…

聊聊Go的三色标记法

这里是Z哥的个人公众号每周五11&#xff1a;45 按时送达当然了&#xff0c;也会时不时加个餐&#xff5e;我的第「203」篇原创敬上大家好&#xff0c;我是 Z 哥。今天带来一篇久违的技术型文章。之前也有不少小伙伴会问&#xff0c;Z 哥你好久没发技术性文章了。其实主要原因有…

架构师讲解Java中websocket的应用

这篇文章主要来介绍一下在java项目中&#xff0c;特别是java web项目中websocket的应用。 场景&#xff1a;我做了一个商城系统&#xff0c;跟大多数商城系统&#xff0c;分为客户端和后台&#xff0c;客户端供客户浏览&#xff0c;下单&#xff0c;购买&#xff0c;后台主要管…

当你死后尸体如何处理?两种新玩法了解一下!

全世界只有3.14 %的人关注了青少年数学之旅据国外媒体报道&#xff0c;死亡是一个庄严肃穆的事情&#xff0c;但是依据不同的文化&#xff0c;人类死亡之后会被认为肉体与灵魂分离&#xff0c;采取的葬礼方式存在很大差异&#xff0c;你想过你的葬礼会是什么样吗&#xff1f;烟…

.NET Core开发实战(定义API的最佳实践)Source Generators版

前言极客时间上的《.NET Core开发实战》是一门非常好的课程&#xff0c;作者肖伟宇在第31课&#xff08;https://time.geekbang.org/course/detail/100044601-201165&#xff09;介绍了定义API的最佳实践。大意如下&#xff1a;Controller这一层负责与前端用户的交互&#xff0…

多年经验的程序员迷失了自己,该怎么办?

多年的程序员迷失了自己&#xff0c;该怎么办&#xff1f; 本文选自《我也能做CTO之程序员职业规划 》一书 我应该朝哪个方向发展&#xff1f;我不做这行还能做什么&#xff1f;当现实情况与理想目标之间的差距越拉越大时&#xff0c;大多数刚入行的IT人员都会提出这样的问题&a…

大神讲解Java for循环的几种用法

本文非常适合初学Java的程序员&#xff0c;主要是来了解一下Java中的几种for循环用法&#xff0c;分析得十分详细&#xff0c;一起来看看。 J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环&#xff0c;可以用更简单地方式来遍历数组和Collection等类型的对象。本文…