本文转载自公众号:HelloJava。

云原生这个概念已经越来越深入人心,但对“云原生到底是什么?”这个问题,仍然是各种各样的解读,最近对云原生具体是什么有了点感触,于是写下来分享和探讨下。

我现在认为云原生其实是让众多的公司,通过基于云的产品迅速获得在构建一个现在这个时代的应用(是不是有点像 AWS 一直讲的 Modern Applications)所必需的各种基础能力(如:极强的规模伸缩性、极高的可用性、极低的创新/运营成本、大数据的分析/运营能力等等),而不需要像以前的很多公司,为了具备这些能力,投入巨大,或者用另外一句话说:云原生就是专业的基础能力普惠化,随手可得

当今时代的应用和多年前的应用面临的状况差别太大,这个差异和当今业务面临的激烈竞争和玩法有很大的关系,我以前一直觉得像阿里在发展过程中积累的很多能力,外面很少有公司会需要,就像当年百亿、千亿美金的公司是多么难才出现,但现在看来则完全不一样,所以这也奠定了当今时代的应用在技术层面能力的要求也远不一样,简单说几个点:

  1. 对可用性的要求远高于以前的应用:现在的应用通常一上线对可用性要求就已经不低了,因为一旦出问题就很容易把用户送给竞对;
  2. 对伸缩性的能力要求也远比以前高,主要体现在两个方面:一是团队规模,现在的业务公司很容易迅速发展到百人以上,而百人以上的研发效率如何保持尽量不下降,这对系统的伸缩能力有着很高的要求;二是用户规模,现在众多业务的用户规模可以很快地突破百万、千万规模,这就要求系统必须能根据用户规模快速地伸缩;
  3. 创新和运营的成本必须低:业务竞争无比激烈,快是关键,所以怎么在不需要太大投入的情况下快速上线各种业务,是无比重要的;另一个方面就是运营的成本,这个是和现在应用的用户规模、激烈竞争密切相关的;
  4. 大数据的玩法:现在的很多业务对获客、推荐、搜索等的大数据化要求还是相当高的。

阿里是一家在自身发展过程中,逐步碰到上述的挑战(当年的竞争环境基本还不会要求一个业务上来就把各种能力具备好),但以前也没有云可用,所以在发展过程中不断积累各种能力,现在通过开源、云商业化对外输出这些能力,使得即使到了现在这样的竞争环境下,各种有业务创新想法的同学们,还是可以像当年一样快速上线业务,而不是要先投入巨多力量、花费巨多时间把需要的基础能力打磨出来。

我自己并没有完全经历阿里的发展过程,接下来主要还是简单说下我自己经历的一些。

  1. 在 2007 年,淘宝在基础能力上面临的最大问题是伸缩性,两个现象当时都出现了:用户数量大量增加,加机器已经基本要加到瓶颈了;研发人员大量增长,研发效率下滑非常明显。在这个阶段,淘宝做了一轮非常重要的架构改造,磨练出了例如服务框架、消息中间件、分库分表方案、分布式文件系统、分布式缓存等基础技术产品,结合业务架构的重新设计,很好地解决掉了伸缩性的问题。
  2. 在 2009 年,淘宝面临了可用性问题,经常出各种故障,于是开始积累各种监控、快速恢复、tracing、系统设计里如非关键路径异步化等技能。可用性这块的投入一直在持续,到后来为解决 双11 这种特殊情况的可用性、确定性诉求而创造的全链路压测;通过同城双活、异地多活的多机房体系构建的强容灾能力以及快速恢复能力等;以及在线下场景加入后来面临的不一样的可用性方案等。各种场景的高可用方案的积累,也使得业务的可用性越来越有保障。
  3. 2011 年左右,阿里开始觉得未来在资源投入上的运营成本可能会很夸张,于是在 2011 年开始通过容器化来提升机器使用效率、持续进行成本优化,后来又持续通过云资源弹性来解决 双11 这类型的短时高峰的成本投入问题,通过在线离线混部解决大数据机器投入越来越大、在线机器集群利用率不高产生浪费的问题,经过多年努力,使得业务在高速增长的情况下,机器资源投入上的运营成本还是相对可控的。

如上文所讲,阿里是依靠巨大的人力投入、场景打磨和多年的持续投入才逐渐形成了完备的能力。而现在的业务,则可以用云原生的方式构建,使自身一上来就具备这些能力,至少能够让自己在如今激烈且要求更高的业务竞争环境中,不会在这些基础能力上拖后腿,以此可以花更多的精力、时间、资源在真正的业务创新上。这样具象化的云原生对整个社会的创新还是相当有价值的。

云原生的进一步具象化相关推荐

  1. 云原生生态周报 Vol.10 | 数据库能否运行在 K8s 当中?

    业界要闻 IBM 以总价 340 亿美元完成里程碑意义的红帽收购:这是这家拥有 107 年历史的公司史上规模最大的一笔收购,该收购金额在整个科技行业的并购史上也能排到前三.在当天公布的声明中,IBM ...

  2. 从托管到原生,MPP架构数据仓库的云原生实践

    简介:本文介绍了云原生数据仓库产品AnalyticDB PostgreSQL从Cloud-Hosted到Cloud-Native的演进探索,探讨为了实现真正的资源池化和灵活售卖的底层设计和思考,涵盖内 ...

  3. 京东零售大数据云原生架构实践

    通常谈到大数据,想到的是大数据平台.Hadoop生态或者数据湖技术,关注于大数据存储.大数据计算方向上的技术发展与应用:谈到云原生,想到的是微服务架构.容器化或者SRE(Site Reliabilit ...

  4. 如何用最短的时间理解一项数字技术?推荐这7本最新的白皮书(大数据、云原生、区块链、联邦学习等,附下载)...

    正文开始 信息技术.数据被国家认定为新的生产要素,对于数据从业者来说是时代赋予的巨大红利,但也要认识到,数据要素要发挥出价值,离不开数据要素市场的培育,更依赖于信息技术(大数据.人工智能.区块链.云计 ...

  5. [云原生专题-64]:云原生技术助力5G RAN步入”云”霄 - 对云原生的理解

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  6. 硬核科普:到底啥是云原生?

    本文主要根据课程 什么是云原生?_哔哩哔哩_bilibili 总结而来,其他参考文章如下: <云原生人才计划之Kubernetes 技术图谱>发布! - 知乎 (zhihu.com) ku ...

  7. 阿里云PolarDB数据库将云原生进行到底!业内首次实现三层池化

    10月20日,在2021云栖大会上,阿里云宣布自研云原生关系型数据库PolarDB重磅升级,实现内存池化.多主架构.HTAP实时分析等创新功能,进一步引领云原生数据库技术的持续创新. 阿里云智能数据库 ...

  8. 如何设计一个复杂的业务系统?从对领域设计、云原生、微服务、中台的理解开始...

    欢迎关注方志朋的博客,回复"666"获面试宝典 01 如何解决复杂业务设计 Aliware 软件架构设计本身就是一个复杂的事情,但其实业界已有一个共识,那就是"通过组件化 ...

  9. Dubbo 和 HSF 在阿里的实践:携手走向下一代云原生微服务

    欢迎关注方志朋的博客,回复"666"获面试宝典 作者 |郭浩 审校 |钰莹 Dubbo 和 HSF 都是阿里巴巴目前在使用的微服务 RPC 框架.HSF 在阿里巴巴使用更多,承接了 ...

  10. 云原生安全的挑战与实践

    基于容器和无服务器平台的云原生应用在正在快速地被全球的组织所部署.虽然说云原生应用会带来易延展性.无与伦比的韧性.以及快捷的开发速度,云原生应用同样会带来挑战.有多种保护云原生应用的方式,包括:安全左 ...

最新文章

  1. R语言可视化分面图、多变量分组嵌套多水平t检验、可视化多变量分组嵌套多水平分面条形图(faceting bar plot)并添加显著性水平、添加误差条
  2. 索引存储模型-二分查找
  3. 【Git】解决remote: ******: Incorrect username or password (access token)方法
  4. 往邮箱里发python怎么发_Python 超简单的邮件发送方法
  5. 阿里云助力江苏省财政厅力推统一公共支付平台
  6. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(三)
  7. 修改mysql数据库名称
  8. 打破行业困境,大麦如何引领 NB-IoT 技术创新应用?
  9. hadoop获取文件系统接口
  10. 刷屏!马化腾:腾讯只是一家普通公司,随时可以被替换
  11. 工业相机和普通相机的区别
  12. 上海双非改考408,与上海计算所联合培养!上海第二工业大学计算机专硕!
  13. Google Draco 源码解析
  14. C语言怎么播放背景音乐
  15. Auto.js Pro安卓免ROOT引流脚本开发系列教程27网易公开课(5)-UI界面构建
  16. HTML的简要学习---超链接(待补充)
  17. php中的 notice,PHP中出现Notice: Undefined index的三种解决办法
  18. centos8之systemd管理服务开机自启动
  19. WifiManager自动连接wifi接入点
  20. 光纤信号衰减的原理及分析

热门文章

  1. linux输入文件后clustalw,合并提取后的domain序列之后,linux系统中的clustalw不能读出蛋白信息...
  2. Stata实现结构方程模型
  3. linux mint 搜狗 乱码,解决linux mint wine微信字体显示问题
  4. mysql中dml全称是什么_MySQL中的DML、DDL、DCL是什么意思
  5. 墨天轮国产数据库沙龙 | 胡彦军:华为GaussDB迁移工具解密
  6. 2022高教社杯 国赛数学建模 A题思路
  7. rails 杂记 - erb 中的 form_helper
  8. 审计一波appcms-持续更新。
  9. 汉诺塔python代码解释_python求解汉诺塔游戏
  10. 显卡内存一直被占用解决方式