取消
搜索历史
热搜词
原创
活动
创新2.0
I T
产业
当前位置:首页 >互联网•IT > 服务器 > 微服务 > 正文
容器是微服务架构“天然”的载体
来源:中关村在线  :佚名 2016-07-19 18:50:08
从Netflix、Amazon、Airbnb等公司的成功实践开始,微服务因其高度的弹性、灵活性和效率的巨大提升,迅速受到各领域架构师和技术决策者的关注,一跃成为2016年IT领域最受关注的技术潮流之一。

从Netflix、Amazon、Airbnb等公司的成功实践开始,微服务因其高度的弹性、灵活性和效率的巨大提升,迅速受到各领域架构师和技术决策者的关注,一跃成为2016年IT领域最受关注的技术潮流之一。

而在几年前,所谓的微服务架构不过是满大街充斥的软件架构里的一个新名词而已,甚至可以说微服务架构的受宠和容器云的到来不无关系。

\

微服务很美,却也有太多的不足

很多人将微服务看作是SOA的升级,或许也正是这个原因,微服务架构相比于单体应用解决了很多问题,本身也带来了一系列的复杂性难题。

一般来说,微服务架构的一个明显特征就是局部修改,局部更新。比如说对一个单体应用进行修改时,可能要先把整个包给停了,然后再去修改,而微服务只需逐步修改和更新即可。

此外,微服务具有故障隔离的有点,单体应用是跑在一起,所以只要一个模块有问题,其他就都会有问题,而微服务的故障隔离性、业务可持续性都非常高。

还有就是微服务的资源利用率非常高,这一点通过Airbnb、迪斯尼、Dropbox、Twitter等公司的实践得到了验证,使用微服务架构之后,软件的构建和部署在速度和灵活性上都得到巨大提升,交付成本更低,系统更具弹性,开发周期削减多达75%。

不过在现有的架构下,微服务架构的复杂性一直是一些公司将其拒之门外的原因所在。

其一,微服务间较强的依赖关系管理。如果拆成微服务依赖关系该如何处理,比如说某个微服务更新了会不会对整个系统造成影响。

其二,微服务本身的部署复杂。因为微服务是一个网状分布的,一个微服务应用往往有数百个实例构成,每个应用实例都需要配置诸如数据库和消息中间件等基础服务。

其三,微服务面临资源分配的难题。在使用微服务的情况下,需要为每一个微服务按需分配资源,那么该为每个微服务分配多少资源,启动多少个实例呢,这也是非常大的问题。

除此之外,微服务还面临着监管和协作方面的难题。Docker的崛起似乎让微服务架构迎来了曙光,尤其是以Docker为基础的容器云给DevOps带来了一场革命,也加速了微服务架构的实现。

微服务和容器是1+1>2的结合

和很多容器平台一样,网易蜂巢也看到了微服务架构在容器云平台上的优越性。微服务解决了单体式应用的复杂性问题,应用被分解为多个可管理的分支或服务, 每个服务有相对独立的部署,更容易开发、理解和维护。而网易蜂巢正是凭借持续集成、高可用的平台服务、完善的运维工具等吸引了大批的企业用户。

首先容器技术有效提升了微服务的架构能力。比如说网易蜂巢团队利用Kubernetes容器集群管理技术,结合网易丰富的互联网产品经验,实现了微服务发布、高可用和集群伸缩等特性。使得应用程序能够更快地进行创建,并且更易于维护,同时又能够得到更高的质量。

编辑:张路麒
关键字:     微服务  容器  架构 
活动 直播间  | CIO智行社

分享到微信 ×

打开微信,点击底部的“发现”,
使用“扫一扫”即可将网页分享至朋友圈。