公司新闻
当我们谈论“微服务”时,在说些什么?
发布时间:2018-01-22 来源:本站 浏览:次
尽管话题炙手可热,但对传统行业来说,微服务落地和方法论目前处于起步阶段。本报告来自36氪曾报道的容器公司“数人云”,从驱动因素、落地现状、和容器关系、架构体系、未来趋势和落地方法论等方面对微服务进行了分析。
一、驱动因素
传统行业对IT效率的变革需求是微服务成长的土壤,业务创新导致系统更新频繁、应用复杂度急剧升高,传统架构不堪重负。微服务架构具有明显的好处,尤其是在应对复杂业务系统的多变需求方面。在本次调研企业中,每个月都要进行业务系统更新的比例占63%,只有不到20%的企业半年以上更新一次系统。
加快互联网+步伐成为许多传统企业的必然选择。业务场景、用户习惯和行为在迅速变化,许多传统行业线上业务出现急速增长。
比如金融行业的移动支付、互联网理财等,汽车制造行业的营销、电商、售后服务等线上业务比例迅速提高。IT团队业务开发、迭代都以每月、甚至每周来计,需要7*24小时响应,这些给系统开发和运维带来极大挑战。
在IT对业务的响应和支撑方面,不同行业所面临的困扰略有不同,但总体差异不明显。调研显示,系统支撑方面排在前四的难题分别为:系统复杂性越来越高(28%),运维管理复杂度高,打造一支全栈运维团队困难(26%),线上访问压力大(19%),设备采购维护成本高(19%)。
在传统单体或SOA架构下,应用如果频繁升级更新,开发团队非常痛苦。企业的业务应用经过多年IT建设,系统非常庞大,要改动其中任何一小部分,都需要重新部署整个应用,敏捷开发和快速交付无从谈起。
传统企业在长期的IT建设过程中,通常大量使用外包团队,这导致采用的技术栈之间差异较大,统一管控和运维要求更高。需要运维7*24小时全天候值守、在线升级,并快速响应。
在此时脱颖而出的微服务技术,面对上述困惑几乎浑身优点:独立开发、独立部署、独立发布,去中心化管理,支持高并发高可用,支持丰富技术栈,企业可以根据需要灵活技术选型。
二、微服务落地现状
1、微服务客户画像
微服务架构在企业的使用情况可以分为四个层次:初级使用者、轻度使用者、中度使用者、以及重度使用者。初级使用者基本是传统架构,独立部署需求不突出,技术堆栈不成熟,需要较长的培育和成长期。轻度使用的企业边缘业务系统开始使用Spring Boot 或Spring Cloud等框架,但组件的使用尚不熟练。
中度使用者为使用Dubbo或Spring cloud时间较长,但还没有做周边配套的工具链。重度使用者是那些走在微服务架构改造前沿,具备微服务规划和体系,有自己研发实力的企业,通常是以技术见长的大型互联网公司。
2、15% 左右的调研企业引入了SpringCloud、Dubbo等微服务主流开发框架
此次调研中,6%的企业已经部分引入了Spring Cloud 开发框架,Spring Cloud 也被开发者认为是最好的开发框架。另外,9%的受访企业采用了 Dubbo 等其他微服务框架,也就是说引入了或考虑引入微服务架构的企业达15%。
此外,还有51%以上的企业在考虑往云原生方向转型。这是由于企业数字化转型背景下,IT要更好适应线上业务趋势的必然要求。加上国家政策层面对云服务的支持,传统企业云化是大势所趋。
3、微服务四大技术优势受青睐
从IT技术发展趋势看,无论硬件、软件、还是基础架构都在朝着轻量化的方向发展。微服务通过化整为零的概念,将复杂的IT部署分解成更小、更独立的微服务。
相对传统的建设方法,传统企业更看重微服务如下四方面的优势:技术选型灵活,更轻松采用新架构和语言(28%)降低系统内部服务冗余,提升开发效率(27%)独立部署(22%)更好的容错机制(20%)
在涉及复杂项目时,和单体架构的对比中,微服务从多个角度显示出了压倒性的优势。
4、制造业开始发力、金融小试牛刀
这里所说制造业,是大制造的概念,包括制造、汽车、大型制造以及航空业等。从调研数据来看,这些行业引入Spring Cloud、Dubbo等微服务开发框架的占比略高于其他行业,超过15%。制造业开始初步尝试微服务架构。
能看出制造业向“智造”转型的影响,今天的制造业结合了物联网、传感器、云计算、大数据等技术,人工智能技术正在工业、汽车驾驶等领域应用。大量新兴业务场景出现,服务变得复杂,产业的弯道超车带来了明显的微服务需求。
其次,需求明显的为金融行业,包括银行、保险、证券等。尤其是一些国有银行、股份制银行以及城商行等大行都走在架构改造的前列。在自己的创新业务,如手机银行、微信银行、互联网理财等业务上试水微服务架构。在核心业务系统方面,则相当谨慎。一方面是由于监管和政策的原因,另一方面,银行开发体系庞大,IT架构变革将是一件非常复杂的事情。
5、微服务推进障碍
微服务不是完美架构,会带来系统的各种复杂度,以及运维要求更高等诸多难点
微服务并不是一项横空出世的技术,事实上MicroService的概念已经诞生多年。除了组件和技术不成熟,企业业务模式不急迫的因素外,微服务本身也有自己的劣势。
本次调研,有近一半的企业会谈到对微服务的顾虑。比如部署以后的复杂度,后期运维管理的不友好等等。对于团队来说,搭建微服务架构上手难,运维效率低,运维成本高。另外,还可能带来团队之间沟通上的冲突,微服务需要与DevOps同步推进。微服务被分割成一个个独立的业务模块后,服务间通信接口设计非常重要。如何科学地将系统部署到服务器上,保证各个服务高效运行,更是难点。