最近有关开源软件的话题始终牢牢占据着IT界的新闻头条,Log4j开源软件的惊天漏洞、Fake.js的作者也惊天删库跑路了,CurL的作者怒怼苹果只会白嫖开源却不出力,Linux的祖师爷Linus也不知所云地在Github为Windows XP加油打Call。

中国开源虽然繁荣,但背后隐患不少

十年前业界普遍认为“代码正在吞没世界”,现在IT界普遍认为“互联网世界的一切源自开源”,而来自中国的程序员们正在通过开源,让全世界开始学习中国话。2019年一个老外发了一条名为“中国的开源项目正在破坏 GitHub 的发现页面”的博客,吐槽中文项目已经占领了GitHub 的趋势排行榜,排名前10 项目中居然有 9 个中文项目,这样火爆的场面恰恰是近来年来中国开源项目发展的一个侧影。目前,在全球最大的开源社区GitHub中,中国开发者在数量与贡献度上均位列第二。尤其是2019年的新注册用户中40%来自中国,他们中90后的年轻人居多,完全出于兴趣与实现自我价值参与开源项目。可以说中国开源正在迎来自己的黄金时代,一股来自中国的开源力量席卷全球。

但是包括笔者在内的很多业界同仁都认为这种繁荣有相当一部分是虚假的,在这看似一片繁荣的景象背后,也有不少的水分,所谓“国外一开源,国内就自主”,目前中国的开源事业蓬勃发展的背后往往采用的是照搬、照抄的模式,这也为开源项目尤其是基础软件方面的开源项目在国内的发展埋下了巨大隐患。

照搬开源有风险,基础软件照搬开源不可取

去年我国某电子书厂商拒绝开源其基于Linux 内核修改的设备源码,而这一做法明显违反了Linux的GPL协议。因此在Reddit社区引发了开源软件如何在中国维权的大讨论。

这次风波虽然只是个别厂商的行为,却也明显带有了中国的地域性色彩,毕竟好事不出门,坏事传千里,即使我们开源了很多如RocketMQ之类的项目,也无法对冲不遵守开源规则所带来的恶劣影响。

另外值得观察的是在IT基础软件领域,国外开源厂商的所谓断供操作,也时有发生,值得我们警惕。我们看到同样是在去年6月知名的开源云服务提供商HashiCorp在官网宣布:不允许中国境内使用、部署和安装该企业旗下的“企业版”产品和软件。

虽然最后确定这只是一起乌龙事件,被限制使用的仅限于HashiCorp的加密软件。不过这一事件开了一个比较坏的头,因为基础软件方面的开源项目一旦实施替换成本非常大。标志着开源也有走向限制、封锁的可能,而且目前俄罗斯、克里米亚、伊朗的GitHub用户的账号,也都遭到了网站官方的限制。所以我们这种照搬式的开源,只知其然却不知其所以然的模式,未来也可能会面临断供的风险。

基础软件照搬开源还不好用

照抄式开源不但有断供风险,实际使用体验也不好,拿基础软件中的开源分布式存储方案来说,目前我国厂商日常用的大概就是Ceph了,但是基于Ceph衍生出来的各种存储方案,其用户体验差得令人不可思议。

1.不稳定

在使用存储方案时,用户最害怕见到的场景就是存储由于各种原因性能下降,最终造成整个系统的雪崩。Ceph原版开源方案在节点切换、节点重启与数据备份三个在日常工作中经常会遇到的场景下表现都不算太好。

比如开源版Ceph在节点切换时则会出现服务负载能力大幅度下降的情况,此外节点重启时需要加载元数据也就是RDB,Key值越多RDB也就越大,重启速度就越慢,对大集群的Ceph来说,服务重启简直像噩梦一样。

2.扩容操作复杂

从事开源 Ceph 运维工作的程序员,一般都会有掉进过扩容的坑,由于开源Ceph各节点间使用分布式协议进行数据同步,因此扩容操作较复杂,甚至扩容时还需要对节点进行切换与重启,扩容期间服务出会出现短时中断,非常影响效率。

3.运维难度太高

CEPH方案运维难度高,很少有自愈场景,基本的故障场景均需要人工处理,造成CEPH出现卡顿的原因,可能是后台恢复或者重平衡的影响,也有可能是慢盘、网络问题的影响,但CEPH自身侦测机制缺失,需要运维团队自行开发慢盘等监测插件,或者人工识别并踢除慢盘,运维难度极高。

4.资源利用率低性价比较差

存储成本主要是看磁盘集群的利用率,但是当CEPH集群规模增⼤后,伪随机算法导致了存储资源分布不均衡,磁盘利⽤率⽅差过⼤的问题。虽然从L版本开始中增加了balancer插件,能够在一定程度上实现自动监测并均衡,但此插件只能进行权重的评估,对于数据迁移量并没有过多的优化,即难以解决数据不均衡的问题,更无法有效提高磁盘利用率。

正是由于在原型测试中就会遇到上述问题,让很多用户对于Ceph及其衍生出来的项目望而却步,继续使用国外的存储产品,也有像华为、曙光等自研存储厂商,大幅提升了产品性价比、稳定性,还提供统一的运维中台的方案,被越来越多的用户选择。虽然说开源是一种重要的开发方式,但是开源这种看似省时省力的方案,却让我们在基础软件领域很难掌握到真正核心的技术,而不自主掌握高水平的自研技术,就无法做出真正好用的产品。

国内像华为、曙光这样的厂商这样坚持从底层代码自主研发的厂商,才能推出真正自主掌控,而且快捷易用的产品。

基础软件照搬开源不可取,自力更生才是正途相关推荐

  1. TDengine创始人陶建辉:基础软件不开源必死无疑

    作者 | Just 出品 | AI科技大本营(ID:rgznai100) "CEO到底要不要写代码?" 谈起他最近将要发布的一篇推文主题,涛思数据CEO陶建辉笑称,世界500强高科 ...

  2. GitHub多次霸榜,两个月拿下10000+Star,他说基础软件不开源必死无疑

    作者 | Just 出品 | CSDN(ID:CSDNnews) "CEO到底要不要写代码?" 谈起他最近将要发布的一篇推文主题,涛思数据CEO陶建辉笑称,世界500强高科技公司的 ...

  3. Linux内核贡献全球第二,开源四大基础软件,为什么华为要啃下这块硬骨头

    作者 | Just 出品 | CSDN(ID:CSDNnews) 回顾计算机发展的历史,任何一个计算架构的成功都离不开强大的硬件,但这背后更需要繁荣的软件生态. 1960年的集中式计算出现后,诸多基础 ...

  4. 成为国产大数据基础软件第一股的星环科技,未来发展空间几何? | 爱分析调研

    10月18日,星环科技正式登陆科创板,成为国产大数据基础软件第一股.这一事件不仅代表了星环科技这家公司取得的阶段性成就,也标志着在当前数字化转型以及信创建设持续推进的背景下,国产大数据基础软件已驶入了 ...

  5. 软件唯有开源才是出路?

    当年对着 Linux 有着很大敌意的微软,在时隔多年后主动拥抱起了开源: 在科技竞争愈发激烈的局势下,百年蓝色巨头 IBM 不惜花费 340 亿美金收购知名开源解决方案供应商红帽: 放眼全球的技术圈, ...

  6. 科创人·StreamNative翟佳:开源模式价值为王,基础软件的未来在国内社区

    翟佳,StreamNative 联合创始人 Apache Pulsar 和 Apache BookKeeper PMC 成员,前 EMC 统一存储部门技术负责人,前 Streamlio 创始工程师.2 ...

  7. Apache APISIX 温铭:运营开源社区、基础软件创业-拒绝自嗨、聚焦和快速发布

    点击上方"开源社"关注我们 | 作者:温铭 | 转载自:技术琐话 | 编辑:王玥敏 | 设计:刘颖洁 | 责编:Corrie 开源社引言 开源归根结底是一种人类的文化,而全球化背景 ...

  8. 专访丨PingCAP创始人CTO黄东旭:开源是基础软件成功的唯一道路

    亚太CDN产业联盟 备受关注的Distributed Cloud|2021全球分布式云大会·北京站于4月7日隆重召开,分布式云是2021年全球十大重要战略科技趋势,利用分布式架构技术创新,连接边缘节点 ...

  9. 义柏说丨开源,用 To C 时代网络效应的打法做 To B 基础软件

    | 作者:丁宁 | 转载自:义柏资本 | 编辑:王皓月 | 设计:朱亿钦 2020年,似乎所有的投资人都开始看 To B 赛道,下行的宏观经济.新冠疫情以及未来可能出现的黑天鹅.逐渐消失的人口红利等因 ...

  10. 中国开源燃烧!Zilliz 获全球开源基础软件最大单笔融资 4300 万美元

    作者 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 2019 年无疑是中国开源燃烧年,自此,开源之火继续在 2020 年席卷.据 GitHub 2019 年的数据统计,全球 4000 万注 ...

最新文章

  1. golang结构体数组
  2. 笔记-信息系统安全管理-信息系统的安全属性
  3. linux下桥接模式设置静态IP实现上网
  4. java上传音频到服务器_Java 客户端向服务端上传mp3文件数据的实例代码
  5. 【哈利波特】Sherbert Lemon对HP的解读之11
  6. LAMP详解及源码编译安装过程
  7. 【总结】不规则卷积神经网络:可动态提升内核效率
  8. 决策树 结构_决策树模型是什么?5步了解好看模型图
  9. YellowBrick-聚类评估示例
  10. 机器学习项目实战----泰坦尼克号获救预测(一)
  11. Java第二章:数据类型和运算符
  12. Java 下一代: Groovy、Scala 和 Clojure
  13. 【路径规划】基于matlab A星+改进A星的路径规划【含Matlab源码 225期】
  14. ST电机库5.0完全开源对电机控制软件工程师有何影响?
  15. 工业自动化控制-组态王1
  16. lot物联网场景通用架构分享
  17. Connectionist Temporal Classification: Labelling Unsegmented Sequence Data with Recurrent Neural Netw
  18. HTML中document的作用,html中的document对象是什么?一篇文章让你了解document对象
  19. CS相关经典书籍的书评
  20. PTA-C语言-解一元二次方程

热门文章

  1. 用devc++表白_表白墙第42期|别人深夜买醉,我只想买你的心
  2. Java 语言被很多人抱怨语法繁琐、开发效率低、体系繁杂而笨重,为什么还有这么强的生命力,尤其是在企_-Chaz-_新浪博客
  3. python 把文件夹压缩成tar的代码
  4. UBUNTU内核升级后,如何更新 kernel headers
  5. Unity MeshAnimator 2.0.16 ShaderMode
  6. 转:超越一切的熵增定律
  7. tail关键字查询日志
  8. Maven安装和使用(详细版)
  9. 如何用计算机做样本抽样,抽样设计和样本抽选.doc
  10. Latex数学符号整理