一种面向微服务的通用考核系统设计与应用
2019-10-21梁纯
【摘 要】应用于微服务的传统工作系统,因维修成本大、延展性不足、系统状态不稳固等诸多问题,已不能适应网络云技术飞速发展的要求。本文以一种面向微服务的通用考核系统为例子,提出了以Spring Cloud框架为模板、按照服务分类将系统功能组件化的设计理念,并详细论述了该系统的应用可行性,旨在有效提高微服务应机性及其自身安全稳定性的现实途径,进行研究探讨和大胆尝试,为推动微服务更加快捷高效提供有益参考。
【关键词】网络云;微服务;通用考核;功能组件;安全稳定
伴随着网络云技术的飞速发展,社会各行业各领域的工作日趋复杂、内容不断增多,过去的单体应用系统因维修成本大、延展性不足、系统状态不稳固等诸多问题,逐渐不能 适应互联网时代的高效率、快反应和持续强的需求,即便传统的集成软件系统在实践中也逐渐被淘汰使用。近年来,一种最新设计开发的、以达成组件化为目标的系统,正在逐步替代传统系统软件,并在将来有全面普及的趋势。这种系统的各个服务组件之间采取协议的形式展开通信,同时各个服务组件也可以独立运行、维护,以此实现系统的整体功能。本文以用于微服务的通用考核系统为例予以介绍。
1微服务概况
1.1技术原理
Spring Cloud微服务,以一种最新开发的基于服务架构模式的系列框架组合,它可以为应用者提供注册搜索、相似匹配、控制、代理等分布式功能服务。与传统方式相比,它独立性强、依赖性少,运行灵活轻便,适用面广,因此具有更强大的普及型。
1.2 构成组件
Spring Cloud是一系列微服务架构的组合,集成了相关服务功能的组件。根据各自担负的功能,可以分为以下五种:
1.具有服务注册功能的组件,主要是用于注册功能的服务器和客户端。
2.具有入网关口功能的组件,主要是负责路由的服务、分发请求。
3.具有断路服务功能的组件,主要是负责及时处理故障,防止系统崩溃。
4.具有算法服务功能的组件,主要是为客户提供软件负载算法。
5.具有配置调度功能的组件,主要是对数据信息进行统一调配。
2通用考核系统简介
2.1设计考虑
通用考核系统,顾名思义,其功能就是用于考核管理,以促使考核更加规范化。它按照服务功能将整体进行组件化,也就是将综合功能划分为若干个小功能,即化整为零。这些小组件既能通過协议形式协作运行,也可以围绕着各自功能独立运行。该系统最大的亮点,就是在出现海量访问等突发情况时,它能够妥善应对并很好地发挥系统的延展性,使系统保持高度的平稳和安全。
2.2系统组成
该系统能够同时提供多种功能与服务,比如考试题库、考试流程、考试分数、报名登录等等,同时它还能进行数据分析,提供多项可供参考的结论。具体来说,分为以下组成部分:
3 基于Spring Cloud的通用考核系统的建立和运用
其实,这种面向微服务的通用考核系统,就是要以Spring Cloud微服务的组件划分框架为模板,建立一个能够调用若干组件服务的系统。该系统的详细的业务全过程为:
3.1 系统主要功能的实现
3.1.1注册和发现功能的实现
发挥作用的系统的注册和发现组件,可以分为两个组成部分,其中,具有发现功能的部分可以给微服务完成注册服务,并定期接收微服务发来的动态信息,同时能够设定在超过某个时长接收不到信息后注销发送对象;另外一个部分与外部客户端功能相当,它可以调取注册部分的服务信息。
3.1.2负载和容错功能的实现
大数据时代对微服务提出了更高的要求。微服务每一个处理运行都需要多组组件的同时参与配合,而且这些组件之间相互依赖性越来越强,如果其中的一个组件发生故障,就会出现其他组件的连锁反应,即通常所说的网络服务瘫痪的问题。假设出现同时在线访问人数骤增时,就会导致微服务反应迟钝,一旦访问数量再次骤增,该系统对继续增加的访问请求不能处理,最终致使该系统死机、服务停止。因此,上述功能就是要提高面对多个服务请求同时发生时的应急机动能力,以及对外部服务请求响应不及时的状态下设置隔离、启动切断,使系统能够持续保持稳定状态。
3.1.3服务网络关口管控功能的实现
微服务的网络关口管控,就是关闭每个组件的对外链接,在外部客户与微服务系统本体中间设置一道屏蔽层,使外部客户不必直接访问微服务,而只要与网络关口之间发生联系。同时,网络关口管控还能完成统一认证、监控调用等服务工作。。
3.2运用效果
实践中发现,采取组件组合的模式,有效解决了传统工作系统单个服务组件无法解决的绝大多数问题。即便传统的工作系统的集合,其所有组成组件也是通过服务访问路由集中发送的,如果出现同时在线访问量过大时,这种方式就成为了制约系统运行的诟病。通过组件集合的方式,设置多个渠道途径,并各自注册信息,有效解决了网络服务关口管控的问题,提高了系统的灵活度和适应性。
采用Spring Cloud架构的通用考核系统,有效克服和解决了传统工作系统在实践应用中的不足和缺陷,极大地提升了微服务的内容延展性、服务快捷性、维护方便性和系统可靠性,使其能轻松稳妥地应对同时在线访问数量骤增等突发情况,满足了大数据时代对微服务的更高效更严格的要求,在现实中具有广泛的适应性和推广性。
参考文献:
[1]罗光峰,陈慧光,徐洪磊.面向新架构的流量调度系统研究与设计[J].2017(3):10-12.
[2]杨朝晖,李飞,付永振.微服务编排在网管支撑系统中的研究与应用[J].电信工程技术与标准化,2019(6):31-36.
[3]黄有福,龚静娴.基于高职院校的微服务应用探索[J].教育信息技术,2017(12):20-22.
[4]殷佳玲,夏帆,顾航,et al.基于微服务的研究生培养系统的设计与实现[J].华东师范大学学报(自然科学版),2019,2019(4):83-96.
作者简介:
梁纯,女,汉族,1979年12月湖北武汉人,计算机硕士,讲师,研究方向:软件设计,面向微服务架构。
(作者单位:武汉晴川学院)