为何使用云原生应用架构 三 :独霸天下之四大绝技 — 弹,弹,弹性扩展篇
Posted 魏小言
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为何使用云原生应用架构 三 :独霸天下之四大绝技 — 弹,弹,弹性扩展篇相关的知识,希望对你有一定的参考价值。
文章目录
为何使用云原生应用架构 三 :独霸天下之四大绝技 — 弹,弹,弹性扩展篇
上篇文提到,在保障软件价值交付的速度同时,云原生应用架构提供了安全及容错机制,确保实现价值的高可靠性。
软件的功能部署有了着落,而这仅仅只是开头,在软件价值实现整个生命周期中,服务或业务能力的增长才是主旋律。
下面聊聊,云原生应用架构中,支撑软件能力快速成长的独家招式 — 服务的自主、弹性、扩展 !
业务/服务能力快速增长才是软件生命周期主旋律
“ 学如逆水行舟,不进则退 ”。
中国有句老话,“ 学如逆水行舟,不进则退 ”。这样的谚语词根在市场中同样适用,市场行情 / 风向无时无刻不在变化,迫使着软件价值必须持续增长,这样才能在市场中站住跟脚。
股票交易所是 “ 产品/服务价值增长 ” 的 “ 现实或生活中具象的体现。
每年会有各种风投及资本巨鳄对市场公司的财报做各种分析,以用于决策资本是否继续追投 或 及时变现。而财报中某中数据的增长是决策的关键性指标!
可以这样说,产品/服务的快速持续增长决定了一家企业未来能够走多远!其中的商业变现能力是否持续强劲,更是决定了企业能够活下去的关键能力。
「本文主 ” 产品/服务增长,云原生架构如何应对 “ 。具体商业变现这里不做详细解,请关注后续文章」
产品/服务持续增长背后是技术架构的全力输出
公司/团队的技术架构默默陪伴,支撑着软件价值的快速增长。随着产品/价值 需求的增多,架构所承担的服务能力担子一重再重。
服务垂直扩展
应对服务能力的增长,传统的解决方案一般就是通过垂直扩展应用组件,达到处理更多需求的目的。常用的做法就是购买性能更优秀的服务器,以提升服务能力。但是这种方式会给资源规划造成极大的困扰!
在市场竞争中,企业/团队往往会推出实效性活动刺激用户行为,达到某种数据增长的招式,比如 双十一、618、黑色星期五等等….,为了保障此类服务平稳,往往我们需要提供比平时更强大的计算能力!
如何确定需增加多少资源预算,确是一个无法准确约束的难题,通过人为经验估算会导致结果偏高,毕竟谁都不会愿意承担服务力匮乏导致数据未达预期增长的责任!
即使我们完全 hold 得住这类流量,但由于这种规模具有实效性,过去了服务恢复原水平,会出现因为资源预算过多,资源利用率低,甚至资源闲置的尴尬局面!
这个时候,人们往往在这两种行为活动中拼命的想法子兼顾,可仔细想想,你的团队这样真的可以完全兼顾吗?
服务水平扩展
创新型公司面对这种问题提供了两种特殊的解决方案:
1、不再进行垂直扩展,采购大量的廉价机器提供水平实例扩展
2、将大型服务器进行 虚拟化 ,并部署多个隔离的工作负载提升大型服务器的资源利用率
这种解决方案,在一定程度上解决了此类扩展问题,还提升资源利用率。在提升服务能力的同时,节省了成本!
但还是存在一些局限。例如,在水平扩展时,无法实现自主性,不够灵活;在服务器虚拟化之后,硬件系统负载很高,利用率仍存在上升空间等问题!
服务自主弹性扩展
对于云原生应用架构来讲,极近完美的给出了解决方案。
将服务上云,云基础设施的自主特性非常适合服务节点的自主扩展,云将按需、自助弹性提供和释放计算、网络和存储资源的计算环境。针对资源利用率的问题,作为应用程序部署单元,云原生提供了比虚拟化效率更高,资源使用率更高的容器化技术,进一步逼近服务器的潜能。
公司/团队,无需对服务能力增长付出更多的精力,成本,将专注于业务创新、价值质量、团队成长等方面,为公司提供真正敏捷型力量!
注意:
这里需要提出,关于云原生应用架构使用的一个基准「benchmark」。在提供自主弹性扩展的同时,要求同分布式架构,“ 状态外部化至存储 ” 特性一致。保证应用实例本身的无状态性,这样才能快速创建及销毁、附加状态、解除状态,对外提供服务能力。
Q&A
1、云原生针对服务快速自主扩展的内部实现及原理是什么?
本篇主 “ 云原生架构的四大特性 ” 讲解,面向初了解同学,布道类型。实现及原理涉及云基础架构设计,请关注后续文章!
2、云原生既然有自主弹性扩展能力,为啥市场上仍然有未上云的?
任何架构都不是完美的解决方案,只有适合自己的才是最完美的。
针对各自企业/业务发展阶段,选择/设计不同应用架构才是最佳的解决方案!
3、服务能力需要增强,除了水平扩展实例,还有其他方面的解决方案吗?
有,在软件开发的每个流程中都可以对服务能力做某些行为。
这里简单列个 case : 比如可替换某些服务 组件/算法,利用 nginx 、xxhash 等等这些都具备极其优秀的性能!间接也达到了服务能力增强的效果!
4、云原生应用架构 四大绝技 还剩一个是啥呀?追更!
想知道百度现在 out BAT 队列的主要原因吗?下篇文就解答!「移动应用体验优先」
附录
技术交流或许不适合大会议室,书写和提问都不顺畅,大会议室的或许是技术分享。
欢迎加入Q群聊【编程技术交流分享群717647116】,微信群请私信博主添加
以上是关于为何使用云原生应用架构 三 :独霸天下之四大绝技 — 弹,弹,弹性扩展篇的主要内容,如果未能解决你的问题,请参考以下文章