开源生态红似火 华为引领中国力量显峥嵘

举报
技术火炬手 发表于 2018/07/03 10:31:54 2018/07/03
【摘要】 当Richard Stallman发起开源运动之时,他恐怕不曾想到开源能够给今日的世界带来如此巨大和深远的变化。开源的开放、共享以及大家齐心协力共同向着同一目标努力奋进的精神,如今已经成为人类共同的精神财富,激励着无数仁人志士为开源积极的贡献着自己的力量,而开源的思想也已经深深的烙印在每个IT人的心中!开源改变世界很难想象,如果没有开源,现在的世界会是怎么一番模样。Linux、OpenSta...

Richard Stallman发起开源运动之时,他恐怕不曾想到开源能够给今日的世界带来如此巨大和深远的变化。开源的开放、共享以及大家齐心协力共同向着同一目标努力奋进的精神,如今已经成为人类共同的精神财富,激励着无数仁人志士为开源积极的贡献着自己的力量,而开源的思想也已经深深的烙印在每个IT人的心中!


开源改变世界

很难想象,如果没有开源,现在的世界会是怎么一番模样。LinuxOpenStackKVMDocker这些耳熟能详的开源技术,在今天,基于这些开源的技术已经诞生了如红帽、SUSE等世界级的软件公司,而这些开源技术也已经几乎被所有的IT厂商或多或少的在采用。据相关数据显示,在超级计算机市场,100%采用开源;80%的企业级操作系统是Linux82%的智能手机操作系统是Android;在云计算领域,90%的公有云负载运行在开源软件之上。而Linux以前的死敌微软也坦诚,在Azure云上,60%的工作负载都运行在开源的Linux之上。同时,IBM、英特尔、谷歌、微软、苹果、华为等国际巨头也在通过加入各种方式不遗余力支持着开源事业,为开源社区贡献自己的力量。由此足见,开源之火已经燎原,开源的种子已经在世界各地落地开花,开源已经改变世界!

image.png

源于开源

不过,对于在IT技术方面长期以来落后于欧美的中国来说,开源的重要性已远远不是改变那么简单,它实际上给中国企业带来了一个从落后到追上,直至最后赶超的机会。可以说,如果没有开源,中国的企业还只能停留在使用价格昂贵的闭源软件的时代,如果没有开源,中国的BAT也不会取得如此快速的发展,如果没有开源,中国的许多云计算厂商就将不复存在,以华为云为例,在华为云发出的虚拟机中,有超过2/3的虚机在运行各种版本的Linux上,基于开源的服务,比如基于Hadoop的大数据服务,基于MySQL的关系型数据库服务,基于MongoDBnosql数据库服务,都是被广泛使用的服务,在最近非常热门的AI领域的几个框架也都是开源的。像华为云、腾讯云、青云QingCloudEasyStack、海云捷迅等一干厂商,也都是基于开源的OpenStack而逐渐成长起来的优秀中国云计算企业,对于中国厂商来说,采用开源开放的技术顺应了广大用户的需要,是更合理的选择。


强于开源

然而,对于中国厂商来说,如果仅仅是拷贝粘贴开源代码,或者将开源项目直接拿来就用,是不能取得较好的效果的,开源的软件作为创新项目的基础很不错,但如果直接投入商用却稍嫌不足:开源软件在功能上有不少创新,但是在可靠性和高可用性上却有些不足;开源软件由多个组件拼装而成,各个组件之间的配合有时候会出现版本没有拉齐等问题;基于开源软件开源框架的应用在云化场景也会遇到运行和运维的挑战,比如:云上云下环境的不一致带来的调试问题,分布式复杂环境的部署、运维、扩缩容的问题。企业在使用开源软件时缺乏支持等等,导致企业在正式使用开源软件的时候多少会有些纠结,也不一定可以得到很好的效果。

华为自身也是开源软件的大用户,在使用的过程中的确碰到种种问题,但是毕竟华为技术能力强,很多时候通过分析代码发现了原因并加以解决。华为深知其中的痛苦。所以在华为进入企业市场面向企业销售软件的时候,尽量从开源开放的系统出发,贴近具体的客户化场景,在高可用,用户友好等方面进行加强,并进行深度地测试验证,能够满足商用的标准。

在应用层,目前微服务应用框架业内是百花齐放的状态,华为云的微服务云应用平台ServiceStage也充分考虑微服务框架的开源开放、生态接入能力,不仅仅支持华为原生的ServiceComb框架,也已经支持Spring Cloud等开源的微服务框架。开发者在本地开发完成的微服务应用之后,不用再过多考虑应用开发环境与运行平台的不一致性问题,以及分布式环境的部署、调度、资源管理、应用监控,服务治理等等问题,ServiceStage能提供稳定可靠的基于容器和虚机资源的运行环境和友好的微服务管理控制台;同时也充分考虑开发者易用性和微服务开发生态,包括:对接多仓库的微服务流水线,帮助微服务开发者在运行时管理和监控微服务UI化的多平台(LinuxWindowsDockerDarwin)本地注册中心,轻松切换云上云下开发环境。


回馈开源

实际上,开源原本的初衷,并不仅仅意味着索取,更多强调的是贡献。只有大家在索取的同时积极贡献社区、反馈社区,开源社区才能众人拾柴火焰高,不断发展壮大。LinuxOpenStackHadoop等开源社区取得巨大成功的原因也大都根源于此。华为深知这一点,因此华为一直以来都是不遗余力的向开源社区贡献自己的力量:

image.png

OpenStack社区拥有2TC席位,7PTL(包含NovaNeutron等核心项目),26Core Members,代码贡献在近两个版本排名第二,Blueprint贡献在近两个版本排名第一;在CNCF,华为有一个TOC席位,一个K8S SC席位,5Maintainer席位。截止到一个月前,华为累计Pull Requests(PRs)贡献 2400+条,厂商贡献排名第3。在Hadoop社区,华为贡献社区排名第三。

同时华为云还主导开源了ServiceCombCarbonDataOpenSDS等项目。其中CarbonData是中国本土公司首个Apache顶级项目,有来自30多家公司110多个直接代码贡献者,ServiceComb使用用户覆盖IOT、生物医药、金融、互联网、地产、AIISV等行业,当前共贡献给Apache社区33万多行代码,160多位代码贡献者。

20175月,同样在LC3大会上,华为云将其微服务引擎服务的代码进行了开源,并于1711月捐赠给了Apache软件基金会,是国内第一个进入Apache孵化的微服务项目。华为云微服务引擎在华为内部系统商用了3年多时间,在保持电信行业高性能低时延能力的同时也历经了华为VMALL商城等电商场景的历练。例如,华为消费者云业务拥有数亿级用户访问量,业务对性能和时延等要求都非常高,曾尝试使用其他分布式框架实现,由于大部分业务是I/O密集型的,同步微服务调用模式导致CPU利用率低,性能也无法提升,硬件资源利用率低。采用ServiceCombReactive全异步模式之后,QPS提升2+、时延降低45%,大量的硬件资源因此被节省,并异步模式同时解决了传统分布式框架经常遇到的雪崩效应,即某个微服务调用慢导致上游调用方被阻塞引起雪崩。

华为云历经考验沉淀下来的ServiceComb 严格遵循微服务设计理念,是具备多通讯协议、服务治理、多编程模型、动态配置、流量控制、负载均衡、服务度量、注册发现、分布式事务、插件式扩展设计、服务化契约特性、轻量级边缘服务、脚手架等能力的一站式开箱即用微服务解决方案,它和SpringCloud等主流框架兼容互通,又同时补充了其中的不足,不必像SpringCloud一样需要高的学习成本去组合不同的组件来实现微服务应用,也不会有由于使用其他分布式而非专注于微服务化的框架而引入的类似于服务间Devops协同开发困难等非遵循微服务化原则而导致的设计弊端,使用ServiceComb可以在30分钟内轻松构建一个房产CRM云原生应用。华为云将经验沉淀在了ServiceComb并捐赠给了Apache软件基金会,致力于帮助企业能够轻松构建微服务应用,帮助开发者和企业从微服务化的复杂性和困难中解放出来。

华为云开源ServiceComb一年以来,越来越多的中国企业也陆续开源了其自研的分布式或微服务框架,也有更多的企业追随华为云的做法将自己项目贡献到Apache进行孵化。ServiceComb将全球最大的开源社区的精髓Apache Way带入了中国企业的中间件领域,影响国内的众多企业以更加开放的态度拥抱开源,也使得各个开源项目社区更加开放多样,给开源用户和开发者提供了更加亲和的土壤。

这些信息能够充分体现出华为是开源的积极贡献者之一,也是中国在开源运动中的先锋。华为以后也会继续以开放的态度回馈开源。


引领开源中国力量

基于源于开源,强于开源,回馈开源的理念,华为云已经逐渐成长为中国开源力量的引领厂商,这从上面的各种数据中就可以得到很好的证明。而华为云绝不会躺在这样的成绩单上徘徊不前。华为云深知云服务同商业软件交付客户的模式存在很大不同,因此,在华为云坚定的开源步伐中,华为云经常大胆尝试最新的技术,通过用户的反馈迅速改进。华为云积累的经验也已经或者在不久的将来回馈给社区。


本文章来源:CSDN社区,用户:孙浩峰,版权归原作者所有

原文链接

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。