微服务在企业软件的优化研究

2021-08-09 03:23李姝文
电子技术与软件工程 2021年11期
关键词:架构智能服务

李姝文

(云南电网有限责任公司楚雄供电局 云南省楚雄市 650000)

针对于较为传统且老套的软件体系结构,此结构有着多方面的不足之处,相对应的此结构中关于微服务的架构也有着它独到之处,需要了解当前的技术相对复杂的生态系统,通过系统的研究思路,在全面分析系统的研究方法的基础上使用质量信息,使传统软件工程方法的不足能够得到有效地弥补,面临着建设、部署、运行、维护,软件系统开发和维护的复杂的社会,复杂的软件开发过程,形成一个高度智能系统,为了适应各种复杂的服务,成长和进化有着相似的想法。

首先在对社会现象进行细致研究之后,针对现今关于复杂软件系统和微服务体系结构情况进行了考察研究及分析;接下来通过对复杂系统、微服务、智能系统和架构之间关系的研究,分析其存在的社会价值与意义,希望可以分析出其实用价值,扩大实用面,然后得到了关于微服务开发的方式——描述复杂系统的智能服务,它包含着许多的方面,在下面本文将会对它们进行一一的分析研究,鉴于实践才是检验真理的唯一标准这一根本原则,最终的介绍方面采用共享出行的例子进行汇报。

1 复杂软件系统、群体智能、微服务

繁杂的实际生活有着不同的特征,理论与现实存在着一些差异,因此对实际生活的研究应该结合市场上服务情况现状,得到其特点如下:体系内各个因素间的联系是不定的,而且越来越麻烦;仅仅通过叠加单个独立体系的特征来描述一个大整体是非常困难,所以它们之间应当且肯定存在着一些更为复杂的关系;如此一来可以说是它是在适应各种变化持续发展起来的。如图1 所示。

1.1 群体智能与复杂软件系统

研究行径知识的形成是由于群居的群居昆虫、蚂蚁和蜜蜂带来的灵感,二者的社会形态与其他独居生物不同,具有高度的协同性,与人类社会存在一定的共通性,因此对其它们的组织和形态,当其利用不复杂的法则改变时,就可以大规模地发展智力。大众智能体系其根本属性是一个复杂而不定的认知网络,其中不断出现的力量对网络进化的复杂性产生了巨大的影响。

寻找真正的集体智慧是一个复杂的制度组织,而智能系统的举动很难学习一些并不复杂的重叠领域的自主系统和繁琐的智能适应群体的发展。能够从群体智能的角度研究和分析构建体系,进行大规模的发展智力,最终可以构建能够对条件改变做出回应和对于要求有所改变的系统。

团队的智慧,对其分析行为的方法是分析由大量成员和一个有机体系,之后,通过有关类似的动机和决策效率,以达到治愈为新兴有机的集体,这是智能决策系统模式研究了由一群思想的力量。这样的方式使得该体系能够很大程度上提高效率,经由对社会智慧和繁杂的软件系统的关系,可以根据社会智慧方面的研究方法及方式,继而对繁杂的软件系统采取一系列操作。

表1:微服务各环节的技术框架

图1:复杂系统的性质及与群体智能的关系

图2:复杂服务软件系统的分层架构

1.2 微服务技术与复杂服务软件系统

近年来,微服务技术作为一种新型的软件构造,得到了广泛的关注,微服务技术的最重要且中心的思想在于把繁杂的集合划分成能够个人实现和修复的小点。从单一途径到分布式微服务结构整个结构方面的大幅变化,可以说很大的方面针对以前的程序操作开发、实现多方面进行了转变。与曾经的软件体系结构相对比来说,微服务体系结构允许更有利地对信息资源进行合理利用。

图3:微服务架构设计

图4:数据处理流程

关于繁杂的服务软件系统,其中包括着很大部分的小服务,并且微服务可以用不同的言语完成,属于不一样的客户,而且含有很大部分不确定的实际事例。在不确定的情况下建立并经管一个大范围的微型服务体系,这对于事情本身来说是存在着很大的困难的。其可以直接创建不简单的程序,而不是借助单个研发和安置,应当通过复杂的程序来组织很多能够理解、决断和运行程序的人员。渐次适应组织的组成、协会的职能和服务,以及环境、现实和物质条件日益优化和平静的演变。

1.3 复杂服务软件系统建模

关于复杂服务软件系统的建模如图2 所示能够分成两种方面,一是平台,二是业务,这两种层面。第二个层面又可以进一步分成好多种组织,并且针对于各个组织,对于其中的工作主体,都有自己相对应服务功能。

关于复杂的服务软件系统,有关方面建议了一个多代理关系电路模型,用于共享匹配描述许多有关企业(包括供应商、消费者、第三方平台、服务流程、服务目标及其价值)的服务层的现代服务元素。

每个个体都一一相对于平台级别上的几个微服务组,这些微服务组级别。工作者和平台方面对服务的对象和无数微服务存在着不同的形态和构造,各微服务都是构成系统的独立成员。对于该系统,此体系需要一个参考模型,优化的实时监控,安全的操作和维护,由一个智能的研制团队通过模拟程序支持,以发现一个合适的解决途径来执行大量的微委托任务。

2 微服务架构的实现

2.1 服务的划分

对于微服务的划分,不管是用任何的方式进行服务操作,其目的都在于确保工作的精确完,减少失误成。采用微服务的方式,目的在于在工作完成和用户的体验两个方面更好的做到完美,既能提高效率又能保证体验,可以扩大实用市场。并且把整体业务切割成小部分数量较多的工作,减小工作总量,提高质量可以更好的完成微服务。如表1 所示。

2.2 微服务的实现

对于微服务实现方面,它可以分为多个模块进行应用,其组成如下:

2.2.1 服务治理

对于服务模块来说,所应用的是Eureka spring Cloud,它在服务注册及察觉中,包含提供商等等。服务注册表对eureka-server 进行激活。由于微服务研究到实际性这个疑问,因此有必要创建一个注册服务群体,其中各服务核心将服务列表与另一个服务核心俱进,用来完成对其实际应用性的影响。

2.2.2 网关服务

网关服务对于其模块是Spring Cloud Zuul,它两个主要作用:一是对Wi-Fi 进行维修保护,二是经由过滤器进行检查订阅、登录。

2.2.3 负载平衡

模块云在春季采取胶带,关键是在用户负载平衡应用发挥作用,以及线性库存、可重复跟踪、竞争策略等等的研究。

2.2.4 容错保护

对于容错保护,其所用模块是Spring Cloud hystrix。当服务失败时,普遍会有很长缓冲,之后是有错的消息,如连接超时。服务出现问题——在hystrix 上升之后,答案是利用切换监视途经发出不正确的呼叫有一个缺点,而不是因为服务故障而等候很久和太忙而长久不遵循这条线。

2.2.5 分布式配置中心

图5:系统整体架构

对于分布式配置中心,其所应用模块是Spring Cloud Config,它被划分为两个方面,即服务器端及客户端。

2.2.6 消息总线

对于消息总线,其所应用的模块是Spring Cloud Bus。

2.2.7 分布式服务监控

对于分布式服务监控,其所应用的模块是Spring Cloud Sleuth,它允许经由将Logstash 或Zipkin 集成到企求段追踪中,而且区分研究每个企求段的方式迅捷检测不正确源。

3 技术应用

3.1 微服务架构

微服务架构不仅是指一种设计模式,同时也是一种特殊的架构风格。Martin Fowler、James Lewis 在2014年期间提出的相关建议,集群中服务程序,在不同情况下单个组的每个目标函数,服务通信机理限制联系和协作,完成工作和适合个体需求的完整应用程序。程序的微服务体系结构支持工作体系的完整模块化和服务。关注工作机理的微服务,具有简单的服务、清晰的界限、低复杂性和定义良好的途径,从而促进程序的研制和安排。

并且与此同时,单独和不受限制的每一项服务,服务部署的每个量表能够灵活地改变,提供迅速激活不同的紧急交通服务接收相同的计算,各服务指定和独立于编程言语和信息库。

3.2 SpringCloud

Spring Cloud 的构建需要基于Spring Boot 来实现,为相对于来说分布最为普遍的形式,并且此方法有着相对简易而的模型关于编程。其中的结构也有着相对于更加完美的微服务模块,比如服务配置SpringConfig 等,通过应用上述组件和框架能够使开发者在档时间内构建出协调稳定的应用程序,并将这些程序应用在实际生产过程中。

4 系统设计与实现

4.1 微服务技术实现

在本次研究中,以Spring Cloud 为基础,对微服务架构进行构建(详情可参考图3)。此外,Spring Cloud Gataway 的实现需要通过使用服务网关来实现,在外部请求被接收以后,这些请求将会被转发至后端。此外,需要使用Nacos 来进一步实现配置中心以及服务注册等功能。此外,还可以完成服务管理、服务配置等,在启动各种服务的过程中,将会以自动的方式完成Nacos 注册,同时在调用的过程中对服务注册表自行查询,即可搜索到服务实例,在关闭时将会自动注销。Nacos 能够以集中的方式对服务内部运行配置文件进行管理,同时也可以进一步追踪修改记录。Spring Cloud Feign的实现需要通过调用服务的方式来进行,其完成的工作主要包括借助于服务接口进行调用或定义等。在开发服务的过程中,需要对接口进行创建,并以注解的方式对其进行配置。通过这种方式,能够快速便捷的达到绑定服务提供方接口的目的。

4.2 系统整体架构设计

结合图3 显示的系统整体架构可知,在配网一体化监控平台中,主要包括以下内容:

4.2.1 数据采集层

该层的主要作用是对标准接口进行对接,并从地理信息系统以及配网主站系统中采集相关数据,然后对数据的格式进行转换,使其形成统一的格式,并将数据转移到数据整合层中进行进一步的整合。

数据采集类型有检修数据、运行数据以及配置数据等,例如,检修计划、配变运行数据以及设备台账信息,在对数据进行检修或配置的过程中,需要通过使用关系数据库或文件的形式进行存储,同时还要通过定时读取的形式采集相关数据,数据的采集可以借助于一些实时数据接口来实现,例如IEC104 等。

4.2.2 数据处理层

在数据处理层中能够清洗获取的数据,同时根据数据的具体类型对其进行合理的校验(详情可参考图4)。除此之外,还需要通过使用全景模型数据对配网图模数据进行校验等,使配网模型能够更加统一标准。除此之外,还要进一步填充不完整数据,可以根据其他系统内容进行初步估算,如果数据难以处理可以直接过滤数据,确保数据有较高的准确性。对于异常数据,可以通过人工的方式进行核对,最后通过使用数据仓库模型,在仓库中加载相关数据。

4.2.3 数据整合层

该层的主要作用是按照数据的类型对其进行存储,可以分别将数据存储在关系数据库、时序数据库以及实时数据库中。其中,实时数据库指的是一种以Redis 实现为基础,能够通过实时的方式检索数据或存储数据的数据库,而时序数据库的实现语音控以Influxdb 为基础,同时这也是历史数据库功能实现的重要基础,其能够通过高效的方式检索、存储、处理相关数据。关系型数据库的实现则需要以Mysql 为基础,其主要作用是检索、存储各种档案数据,例如配置数据等。

4.2.4 应用层

应用层的实现需要以微服务为基础,其主要包括两个部分,一部分为应用服务,另一部分为基础服务。

基础服务指的是各种基础功能,这些服务通常是公用的,例如,拓扑分析服务、电网模型服务等,能够使上层应用服务获得更大的支持。同时,通过使用应用服务也能具体的划分供电公司用户的实际需求,并为用户提供独立的服务对于不同的服务而言,这些服务关注的业务功能通常是单一的,也就是不同服务之间可以实现松散耦合。核心服务主要包括配变负载告警、电网负载监控等。

可以借助于API 来实现服务的调用,并以统一的方式在配置中心中对其进行管理。通过使用手机APP 和Web 前端页面,可以直接调用这些服务,并在获取数据以后对数据进行分析计算,然后直接显示最终的计算结果。

4.3 主要功能实现

4.3.1 运行指标监控

以全景的方式对设备运行及配网10kV 线路进行监控,同时还可以直接浏览配电设备的运行状况,分析电网情况,以实时的方式检测各种异常状况,包括配变低电压、故障跳闸、三相不平衡以及重过载等。

4.3.2 指标计算

能够实现对指标的配置,对于用户而言,其可以与对指标数据源以及统计间隔等进行配置,系统可以根据配置项对数据进行计算。通过使用该系统,能够计算并展示供电可靠率、终端在线率、电压合格率、遥控使用率等,从而为运维人员的对比分析提供更多的参考。

4.3.3 运维管理

在统计分析各种设备台账的过程中,需要全面的了解工单数据,其中包括抢修数据、缺陷数据等,同时还应当根据设备在线时长、故障率及运行状态等,基于消缺时间、设备大类、发现时间、设备类型、登记班组等维度进一步划分各种条件。系统整体架构如图5所示。

5 结束语

在本次项目中,通过使用配网自动化系统,获取其中的资源,并以数据清洗的方法连接不同的系统信息,创建能够实现多种功能的信息数据库,实现配网运维的全覆盖。除此之外,基于微服务构架思想,对不同的业务功能进行划分,从而获得多个独立的服务,通过相互组合不同服务,根据实际需求对上层应用功能进行扩展。此外,借助于可视化展示等方式,全面监测配网实时运营数据,通过智能全面的方式监控配网运行状况,以此来达到集成利用各种数据信息的目的,使运行管理人员能够更好的实现配网运营。

猜你喜欢
架构智能服务
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
服务在身边 健康每一天
服务在身边 健康每一天
服务在身边 健康每一天
LSN DCI EVPN VxLAN组网架构研究及实现
一种基于FPGA+ARM架构的μPMU实现