面向生产制造企业的微服务架构应用研究

2020-09-10 19:55肖开余 何城桥 唐信军
看世界·学术下半月 2020年10期
关键词:微服务架构制造业

肖开余 何城桥 唐信军

摘要:随着企业信息化、数字化标准不断提高,制造企业的互联网业务复杂程度不断提升,传统的应用整体架构愈加臃肿,维护困难、集成复杂等弊端日益凸显,基于此微服务架构摒弃了传统大规模的单块集成应用,变为松耦合、细粒度、可灵活组合的自治单元。微服务架构是一种架构思想和开发模式的蜕变,相比于面向服务的架构(Service Oriented Architecture,简称 SOA),微服务架构有着基于独立服务、按需收缩、易于开发维护、上线周期快的优点。本文主要阐述微服务架构的定义及工作原理,论述微服务架构的特征,以及微服务架构在企业信息平台建设应用中的价值。

关键词:制造业;微服务;架构

一、微服务架构的概述及原理

“微服务”一词源于Martin Fowler的名为Microservices的博文,简单来说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作[3-4]。被拆分成的每一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建。并且每个服务都维护着自身的数据存储、业务开发、自动化测试案例以及独立部署机制,如图1所示。由于有了轻量级的通信协作机制基础,所以这些微服务可使用不同语言编写[5]。微服务架构轻便的服务方式可有效保持分系统的独立运转和扩展与延伸,为每个分系统之间实现了划分、使每个分系统都可以单独地进行维护和替换,使整个系统分而不散,有机融合[6]。

在现有微服务架构中,Spring Cloud为常用的基础框架,Spring Cloud是一系列框架的有序集合,利用Spring Boot的开发便利性简化了基础设施的开发。其工作原理是采用了分散治理,将一个系统根据业务拆分成多个子系统服务;将多个应用通过负载均衡部署于子系统;把子系统服务注册到Eureka,以一定策略实现负载均衡;客户端均通过API网关(Zuul)访问后台服务,通过路由配置来实现转发请求功能;服务与服务之间可以相互访问及数据共享;Hystrix负责处理调用服务超时熔断问题,为服务提供容错保护,当服务调用超时或出现错误时,可及时处理,避免整个系统瘫痪。

二、微服务架构的特征

(一)服务组件化

微服务架构设计最为突出的就是将复杂的应用组件化地拆分为更简单、更小的服务,由于每个组件化的微服务都可以提供一个完整的功能,因此微服务可以专一地做一个特定业务,会让业务逻辑的实现变得更加简单,也更容易进行构建、开发和维护。

(二)服务去中心化

微服务架构中的每个微型服务都是独立,这是应对大型复杂系统的一种解耦设计。每个服务的构建、开发,部署都是独立的,对技术栈没有太多限制,每个微服务都是相对独立的、更加自由的管理空间,一个服务的更新迭代不會依赖和影响其他服务,从而达到对服务进行自治。

(三)渐进式设计

一个复杂的系统应用从成型到成熟,是一个循序渐进的过程,期间会有新的业务需求的出现,也会有业务需求的变更、消失。微服务的微型化可以快速使用这种快速变化的需求,可以在快速迭代中增加,变更或者删除一个或者多个微服务而不影响整个系统应用的运行,因此微服务的渐进式设计的特点不需要在一开始就构建一个全面的应用,而是随着需求不断进行优化调整。

(四)基础设施自动化

微服务架构依托云计算和容器化技术,实施后续开发、运维工作变得简便快捷。随着企业业务深度的划分,服务拆分越发复杂,导致工作人员的焦点从数量单一、复杂,向业务简单但数量庞大过度。云计算和容器化技术的快速发展,基础设施自动化技术取得了长足的进步,也就间接降低了微服务构建、部署、运行的复杂度。

(五)智能端点与管道偏平化

智能端点和哑管道是微服务架构中所具有的显著特点之一。在微服务架构中,智能端点要求是智能化,管道通信方式应当是简单非智能化,组件之间调用关系不再是像传统软件架构模式中直接通过函数方式进行过程调用,通信方式也发生了改变,不再是过分依赖集中智能路由,而是由拥有智能端点平台来提供。

三、微服务架构在企业信息平台建设中的价值

(一)设计应用价值

微服务架构可以有效帮助企业进行信息平台的构建,在企业应用微服务架构之前,研发设计人员需要对企业开展深入的需求调研,在深度了解企业需求的前提下,结合自身的专业完成相关信息化翻译,以简洁的功能和页面达到用户的需求。通常情况下,信息平台构建的版块之间需要有一定的数据流通和交互,使用微服务技术搭建相关应用后,可使各版块之间的交互更具有柔性,更能快速响应用户的需求变更,系统的上下线才能真正实现业界流行的灰度发布,有效的提升信息系统的运维效率。

(二)架构搭建应用价值

企业信息平台中展示层都有特定工作需求,数据的产生、存储、分析都需要通过服务器才能实现共享,因此各功能都需要通过微服务架构连接,并在功能上交互组成关系网络,实现功能、业务、数据的灵活调用;通过微服务架构实现平台的建立和功能之间的数据流通可以有效降低数据拥堵概率,保持企业信息平台数据运行通畅,为用户提供更加便捷、跳转灵活的功能服务;打破现有的企业业务和平台应用边界,有利于企业部门之间的协作,提高资源利用率。

结束语

随着我国企业现代化发展的步伐加快,在企业中应用微服务已是必然趋势。微服务设计不仅仅对于大型复杂的系统,对于中小型的一个应用平台同样可采用微服务架构,微服务架构模式不仅可以提升平台系统性能,还具备应用系统扩展潜力,对企业信息化、数字化发展具有重要的意义。这几年信息技术的发展,让微服务越来越受关注,应用的领域也越来越广泛,微服务架构已逐渐成为企业开发的常用模式。

参考文献:

[1] 基于Spring Cloud实现业务系统微服务化的设计与实现[J].王方旭.电子技术与软件工程2018(8):60-61.

[2] 微服务架构实战[M].张锋.北京:电子工业出版社,2018.

[3] 微服务架构的发展与影响分析[J].李贞昊.信息系统工程,2017(01).

[4] 微服务架构与实践[M].王磊.北京:电子工业出版社,2015.

[5] 适用于微服务架构的企业应用部署平台研究[D].马恒.郑州大学,2018

[6] 电信运营商单体架构到微服务架构转型设计思路[J].董昭.通信世界,2017(25):56-57.

作者简介:

肖开余(1983—),男,大学本科,贵州贵阳市人,主要从事智能制造软件系统研发,研究方向:企业信息化技术研究;

何城桥(1992.05-),男,大学本科,贵州铜仁市人;

唐信军(1984.06-),男,贵州贵阳市人。

猜你喜欢
微服务架构制造业
基于云控平台雾计算架构的网联汽车路径控制
2019长三角制造业企业100强
2018上海民营制造业企业100强
微信公众平台在医院图书馆的应用现状调查
基于微信企业号的校园移动服务
从单一模式系统架构往微服务架构迁移转化技术研究
VIE:从何而来,去向何方
企业架构的最佳实践
2014上海民营制造业50强
2014上海制造业50强