微服务化的不一样阶段kuberneter的不一样玩法

做为容器集群管理技术竞争的大赢家,Kubernetes已经和微服务紧密联系,采用Kubernetes的企业每每都开始了微服务架构的探索。然而不一样企业不一样阶段的微服务实践面临的问题千差万别,注定要在技术路线上产生分叉。如何选择适合本身的技术,是每个践行微服务的团队面临的第一个问题。网易云是Kubernetes的第一批重度用户,在不一样业务场景下解决了不少挑战,在本文中,网易云首席解决方案架构师刘超梳理了基于Kubernetes构建微服务体系的进阶之路。数据库


微服务化的必要性缓存


一个产品的发展,一般可分为冷启动阶段、高速增加阶段和成熟阶段。产品冷启动阶段,需求是以最简单的架构验证业务。以网易考拉海购(如下简称“考拉”)为例,最初的架构设计目标就是快速启动,验证产品方向,该架构包括在线、缓存、线下和管理服务四个方面,即通常电商平台加上跨境电商必备的进销存系统,采用了Oracle数据库、OpenStack管理的虚拟机(VM),并无诸如高并发之类的考虑。架构


产品高速增加阶段,业务规模逐渐扩大,产品复杂度也随着增长,企业须要解决快速迭代、高可靠和高可用等问题,一个天然的选择是服务化的拆分,把一个单体架构拆分红一些较小的模块,并遵循康威定律,用5-9个小团队来适应架构的变化。仍以考拉为例,考拉在高速增加阶段也慢慢演化出各类新的模块,好比单独的支付模块、货仓模块、第三方商家模块、推送模块等,并基于Dubbo框架打造服务发现功能来支持各模块之间的相互调用。并发


服务化主要解决了变动的问题。在整个架构演进的过程当中,各个模块都面临爆炸性的增加,好比海淘、自营、第三方商家的供应链,Web、APP、H5的呈现,限时购、秒杀、预售的活动页,以及仓库与物流系统、支付系统的对接等,紧耦合则牵一发而动全身,工程臃肿,影响迭代速度,分别独立上线更有利于适应业务发展的需求。考拉在高速增加阶段首先按照主页、活动页、优惠券、支付等维度纵向拆分,以后又不断演进成为100多个相互关联的模块,变动频率由天天2次增加到天天1000屡次,产品质量提高52%。框架


容器化的优点与挑战ide


拆分红大量小模块以后,虚拟机与服务化架构的配合就出现了不少新的挑战,因而有了容器化的需求。微服务


刘超解释说,拆分以前首先要解决“合”的问题,即须要保证功能仍是原来的功能,代码质量仍是原来的代码质量,不会引入新的bug。他认为,微服务化须要从一高并发

相关文章
相关标签/搜索