开源选型中的基因论

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 随着开源组件的日益增多,整个开源社区就像一个超级大的沃尔玛,琳琅满目的开源组件让人挑花了眼。这里,我们就谈谈如何进行选型的问题。

传统的选型方式

一般而言,我们会按如下的方式进行选型验证:
  1. 功能上是否契合。也就是我的需求能通过该组件来完成
  2. 性能如何(会做一些压测)
  3. 稳定性如何
  4. 社区活跃度如何
  5. 是否能方便和其他的组件配合
如果能通过上面的几条,我么可能就会采用该套技术了。然而这往往会导致很多误用。比如很多人就把zookeeper当存储用了,因为倒也满足上面的一些需求。

基因论

这里的基因指的是,某个开源组件是因为什么而诞生到这个世界的。仍然以zookeeper为例,我们可以说zookeeper 是为分布式协调而诞生的,他的基因使得它适合做这一块的工作。但是zookeeper的很多特性又可以利用在很多领域:
  1. 配置变更通知
  2. 集中化的存储
于是有大量的应用围绕这两个功能点开发。这其实就是一种误用。比如Storm 拿 zookeeper存储偏移量,这样就会涉及到频繁的更新,这其实就是不合适的。或许这种场景HBase/Redis之类的存储会更合适些?
我们在选型的过程中过度的考虑了 功能是否匹配,而忽略了开源项目本身的基因,这必然会导致能够实现功能,但是却带来一些不可控的问题。
这里还有一个典型就是Docker,各种滥用导致各种问题,镜像存储问题,虚拟隔离的安全性问题等。如果知道Docker的基因其实是无侵入性的为应用加上资源限制,以及附带运行时环境,就不会各种折腾了。
所以在做选型的时候不妨问问: 我选用的开源组件是为了解决我这个问题而设计和诞生的么?我用的场景是不是吻合他的基因?
相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
目录
相关文章
|
机器学习/深度学习 TensorFlow 算法框架/工具
以图搜图系统工程实践
以图搜图系统工程实践
138 0
|
人工智能 Cloud Native 大数据
构建高性能云原生大数据处理平台:融合人工智能优化数据分析流程
构建高性能云原生大数据处理平台:融合人工智能优化数据分析流程
444 0
|
分布式计算 大数据 Hadoop
开源大数据方案有哪些
开源大数据方案有哪些
146 0
|
6月前
|
机器学习/深度学习 人工智能 算法
开源vs闭源大模型如何塑造技术的未来?开源模型的优劣势&未来发展方向
开源vs闭源大模型如何塑造技术的未来?开源模型的优劣势&未来发展方向
1309 0
|
机器学习/深度学习 人工智能 前端开发
优雅码住!ChatGPT的五大开源替代方案
优雅码住!ChatGPT的五大开源替代方案
453 0
|
云安全 存储 运维
首次全面解析云原生成熟度模型:解决企业「诊断难、规划难、选型难」问题
从“上云”到“云上”原生,云原生提供了最优用云路径,云原生的技术价值已被广泛认可。当前行业用户全面转型云原生已是大势所趋,用户侧云原生平台建设和应用云原生化改造进程正在加速。
2180 15
首次全面解析云原生成熟度模型:解决企业「诊断难、规划难、选型难」问题
|
存储 机器学习/深度学习 Cloud Native
|
消息中间件 边缘计算 Kubernetes
让开源和标准成为云原生的确定性力量
标准和开源加速了云原生,也推动了云原生的全面落地。阿里云通过大量的投入开源,建立更多的技术标准,帮助百万开发者使用更先进的云原生技术,让社区生态和云之间建立起非常好的连接,助力企业和云协同发展。
让开源和标准成为云原生的确定性力量
|
机器学习/深度学习 运维 自然语言处理
硅基仿生业务全面 Serverless 容器化,14万+问答库助力糖尿病科普
“使用阿里云容器服务 Knative,解决了开发迭代慢的问题,加速了深度学习模型的性能提升;同时提供了弹性可伸缩的资源配置,满足网络服务需求,降低了服务部署成本。”
硅基仿生业务全面 Serverless 容器化,14万+问答库助力糖尿病科普
|
存储 监控 Cloud Native
云存储生态构建的技术基因和最佳实践
Cloud2.0 时代,数字化转型进入深水区,需要联合所有的伙伴力量,奋楫笃行,共同打通从数字技术到具体解决业务问题的各种关节。
478 0
云存储生态构建的技术基因和最佳实践