CN111190580A - 一种基于微服务架构的菠菜云技术平台 - Google Patents

一种基于微服务架构的菠菜云技术平台 Download PDF

Info

Publication number
CN111190580A
CN111190580A CN201911358737.XA CN201911358737A CN111190580A CN 111190580 A CN111190580 A CN 111190580A CN 201911358737 A CN201911358737 A CN 201911358737A CN 111190580 A CN111190580 A CN 111190580A
Authority
CN
China
Prior art keywords
service
configuration
framework
frame
spinach
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911358737.XA
Other languages
English (en)
Inventor
周志刚
蔡波
李俊伟
蒋文磊
陈勇超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hubei Prologue Technology Co ltd
Original Assignee
Hubei Prologue Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hubei Prologue Technology Co ltd filed Critical Hubei Prologue Technology Co ltd
Priority to CN201911358737.XA priority Critical patent/CN111190580A/zh
Publication of CN111190580A publication Critical patent/CN111190580A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Product repair or maintenance administration

Abstract

本发明提出了一种基于微服务架构的菠菜云技术平台,包括开发框架、监控系统及运维系统,所述开发框架包括数据访问层框架、通用业务层框架、控制层框架、权限框架、异常处理框架、服务调用框架及日志处理框架。本发明提供了研发到运维一体化解决方案,降低了开发与运维成本,提高物流IT项目交付的效率,提升了客户服务的满意度,降低了企业对技术人员的要求,便于企业培养开发、测试、运维技术人员。

Description

一种基于微服务架构的菠菜云技术平台
技术领域
本发明涉及系统架构设计和框架开发技术领域,尤其涉及一种基于微服务架构的菠菜云技术平台。
背景技术
微服务开发相对于传统的单体应用开发更加的简单、高效,但多应用于互联网产品,在物流行业中业务形态多、系统的功能复杂、流程众多,使用微服务架构时需要考虑存储、读写性能、负载、熔断、监控运维等众多因素。目前主流的有dubbo、springcloud等解决方案。但这些解决方案应用于物流行业软件时,存在以下问题:功能分散在各子项目中,整合配置项繁多,不易于控制和管理;从开发到运维没能提供一个完整的解决方案,依赖过多的三方服务,会导致整个平台太过臃肿和庞大,资源消耗多,无法满足项目交付场景,运维成本增加;针对行业无法提供标准化规范,过多的技术替换方案让开发人员无所适从。
发明内容
有鉴于此,本发明提出了一种基于微服务架构的菠菜云技术平台,以解决传统微服务架构技术的技术繁杂、资源冗余、规范不全、行业提炼缺失的问题。
本发明的技术方案是这样实现的:本发明提供了一种基于微服务架构的菠菜云技术平台,包括开发框架、监控系统及运维系统,所述开发框架包括数据访问层框架、通用业务层框架、控制层框架、权限框架、异常处理框架、服务调用框架及日志处理框架,其中:
所述数据访问层框架用于数据库操作,所述通用业务层框架用于提供通用业务工具,所述控制层框架用于规范数据的输入输出及自动生成API,所述权限框架用于提供访问权限控制,所述异常处理框架用于处理异常并自动推送异常信息,所述服务调用框架用于服务调用过程中的负载和熔断控制;所述日志处理框架用于规范日志输出格式及方式、自动捕获、记录及实时推送用户行为信息;
所述监控系统用于根据所述控制层框架和所述日志处理框架对服务健康状态进行监控,根据所述服务调用框架跟踪并记录整个服务调用链路;
所述运维系统用于系统日志分析、链路节点分析及分布式服务在线配置。
可选的,所述数据库包括多种标准化数据库。
可选的,所述数据库的类型包括oracle、mysql、redis、mongodb。
可选的,所述通用业务工具包括日期处理、excel处理、字符串处理、聚类计算、文件操作、图片操作、分布式事务处理。
可选的,所述运维系统的分布式配置包括配置界面服务、配置推送服务及配置客户端,所述配置界面服务后台连接所述配置推送服务,所述配置推送服务与多个所述配置客户端保持长连接。
可选的,所述分布式服务在线配置的步骤包括:
所述配置推送服务接收配置发布命令;
所述配置推送服务将配置信息实时推送给指定的所述配置客户端;
所述配置客户端接收所述配置信息,动态刷新服务的相应配置项。
可选的,所述配置界面服务提供图形界面。
可选的,所述监控系统根据所述控制层框架和所述日志处理框架对服务健康状态进行监控的步骤包括:
所述日志处理框架将日志信息实时推送到kafka消息中间件;
日志分析服务实时消费所述kafka消息中间件中的日志信息,并进行数据的清洗和实时计算;
所述日志分析服务将实时信息放入到elasticsearch中进行存储,并由所述监控系统进行读取使用。
本发明的基于微服务架构的菠菜云技术平台相对于现有技术具有以下有益效果:
(1)本发明的基于微服务架构的菠菜云技术平台提供了研发到运维一体化解决方案,降低了开发与运维成本,提高物流IT项目交付的效率,提升了客户服务的满意度,降低了企业对技术人员的要求,便于企业培养开发、测试、运维技术人员;
(2)本发明的数据访问层框架提供了大量标准化数据库访问方法,避免了开发者编写sql,同时提供了多数据库的支持,相比较常规的JPA框架,API更加的简洁,入门更容易,同时支持针对复杂业务场景下的sql调优。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的基于微服务架构的菠菜云技术平台的结构框图;
图2为本发明的监控系统根据日志处理框架对服务业务状态进行监控的流程图;
图3为本发明的分布式配置的流程图。
具体实施方式
下面将结合本发明实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
如图1所示,本发明的基于微服务架构的菠菜云技术平台,包括开发框架、监控系统及运维系统,所述开发框架包括数据访问层框架、通用业务层框架、控制层框架、权限框架、异常处理框架、服务调用框架及日志处理框架,其中:
所述数据访问层框架用于数据库操作,所述通用业务层框架用于提供通用业务工具,所述控制层框架用于规范数据的输入输出及自动生成API,所述权限框架用于提供访问权限控制,所述异常处理框架用于处理异常并自动推送异常信息,所述服务调用框架用于服务调用过程中的负载和熔断控制;所述日志处理框架用于规范日志输出格式及方式、自动捕获、记录及实时推送用户行为信息;
所述监控系统用于根据所述控制层框架和所述日志处理框架对服务健康状态进行监控,根据所述服务调用框架跟踪并记录调用链路;
所述运维系统用于系统日志分析、链路节点分析及分布式服务在线配置。
本实施例中,数据访问层框架用于数据库操作,数据访问层框架提供了大量标准化数据库访问方法,包括对oracle、mysql、redis、mongodb等不同类型的数据库进行适配,这样可支持多种标准化数据库的操作,避免了开发者编写sql,同时提供了多数据库的支持,相比较常规的JPA框架如hibernate,API更加的简洁,入门更容易,同时支持针对复杂业务场景下的sql调优。数据访问层框架中提供了通用增删改查操作的快速实现,通过简单的接口集成即可完成,同时提供了分库分表和分布式锁的实现。通用业务层框架除了提供日期处理、excel处理、字符串处理、文件操作、图片操作、分布式事务处理等常用工具外,还提供了聚类计算等库内作业常用算法支持,这样大大丰富了菠菜云技术平台的功能种类。权限框架具有独有的双重校验机制,将前端权限和后端权限进行了分离,并实现了不同的网关,可在不同的业务场景下为不同的网关提供服务。服务调用框架采用约定式配置,可保证服务的高可用。日志处理框架通过切面技术,实现用户行为信息的自动捕获、记录及实时推送。
这里以具体的定时调度服务对本实施例的菠菜云技术平台的工作进行说明。
定时调度服务是一个分布式定时任务调度服务,主要功能是按照配置的定时规则定时的通过接口自动化处理业务,其业务场景包含了数据同步、信息采集、消息推送等,具体功能模块包括规则维护、处理日志记录、权限控制、任务管理,支持无状态部署、高可用、稳定输出。定时调度服务依托于菠菜云技术平台构建。
定时调度服务从开发角度上讲分三层,包括数据持久层、业务层及访问控制层。定时调度服务的数据持久层使用菠菜云技术平台开发框架中的数据访问层框架进行开发。定时调度服务的业务层主要使用了菠菜云技术平台中的通用业务层框架,在通用业务层框架中,通用业务层框架实现服务的调用问题,同时提供了很多通用业务处理工具,比如文件操作、图片操作、分布式事务处理等,其中分布式事务控制引入事务组概念,采用数据源代理加上事务协调器来实现,在具体的开发过程中只需要在本地事务上开启分布式事务注解即可。定时调度服务的访问控制层主要使用了菠菜云技术平台中的控制层框架,控制层框架提供了全局异常处理、API自动生成等功能。
定时调度服务是一个微服务单元,在一个微服务中必须考虑服务的注册、授权、网关、服务调用、服务熔断等技术点的实现,但在实际的开发中使用本实施例的菠菜云技术平台,技术平台自身就实现了这所有的功能,只需要通过一个注解进行开启功能即可。
定时调度服务生产时会以多实例的方式运行于多台不同的服务器上,以保证其高可用,但是这会导致运维的难度提高,分布在各个服务器上各实例的健康状态难以监测,日志都在本地,导致出现问题时日志排查变的复杂,调度接口性能难以监控和调优。本实施例中,定时调度服务的服务实例运行在菠菜云技术平台之上,平台提供了服务监控、链路跟踪、日志跟踪、在线配置等治理功能,系统运维人员可以通过平台实时的知晓定时调度服务的健康状态、查询链路情况、跟踪运行日志及在线修改配置,以便更好的展开运维工作,从而让运维更加的简单、智能。这样,本实施例的菠菜云技术平台提供了研发到运维一体化解决方案,降低了开发与运维成本,提高物流IT项目交付的效率,提升了客户服务的满意度,降低了企业对技术人员的要求,便于企业培养开发、测试、运维技术人员。
可选的,如图2所示,所述监控系统根据所述控制层框架和所述日志处理框架对服务健康状态进行监控的步骤包括:
步骤S10,所述日志处理框架将日志信息实时推送到kafka消息中间件;
步骤S11,日志分析服务实时消费所述kafka消息中间件中的日志信息,并进行数据的清洗和实时计算;
步骤S12,所述日志分析服务将实时信息放入到elasticsearch中进行存储,并由所述监控系统进行读取使用。
本实施例中的监控系统基于开发框架中的服务调用框架和日志处理框架,打造服务的监控平台。首先,根据日志处理框架中的实施推送功能,实现基于日志的服务业务状态监控,主要过程是日志处理框架将日志信息实时的推送到kafka消息中间件中,日志分析服务实时消费kafka消息中间件中的日志信息,并进行数据的清洗和实时计算,将实时信息推送给监控服务,并放入到elasticsearch中进行存储。其次,基于服务调用框架,实现调用链路的跟踪和记录,过程同日志的服务业务状态监控相同。这样可根据上述步骤实现监控系统的监控功能。
可选的,所述运维系统的分布式配置中心包括配置界面服务、配置推送服务及配置客户端,所述配置界面服务后台连接所述配置推送服务,所述配置推送服务与多个所述配置客户端保持长连接。
具体的,如图3所示,所述分布式服务在线配置的步骤包括:
步骤S20,所述配置推送服务接收配置发布命令;
步骤S21,所述配置推送服务将配置信息实时推送给指定的所述配置客户端;
步骤S22,所述配置客户端接收所述配置信息,动态刷新服务的相应配置项。
本实施例中,日志分析和链路节点分析的功能在监控系统中已进行说明,这里,分布式配置中心主要分为配置界面服务、配置推送服务和配置客户端,配置客户端包含在通用业务框架中,配置界面服务后台连接配置推送服务,并提供图形界面给运维人员以方便其操作,配置推送服务将与多个配置客户端保持一个长连接,当运维人员通过界面发送配置发布命令到配置推送服务时,配置推送服务将实时的将配置信息推送给指定客户端,配置客户端接到配置信息,将动态刷新服务的相应配置项,最终实现在线集中配置功能。
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于微服务架构的菠菜云技术平台,其特征在于,包括开发框架、监控系统及运维系统,所述开发框架包括数据访问层框架、通用业务层框架、控制层框架、权限框架、异常处理框架、服务调用框架及日志处理框架,其中:
所述数据访问层框架用于数据库操作,所述通用业务层框架用于提供通用业务工具,所述控制层框架用于规范数据的输入输出及自动生成API,所述权限框架用于提供访问权限控制,所述异常处理框架用于处理异常并自动推送异常信息,所述服务调用框架用于服务调用过程中的负载和熔断控制;所述日志处理框架用于规范日志输出格式及方式、自动捕获、记录及实时推送用户行为信息;
所述监控系统用于根据所述控制层框架和所述日志处理框架对服务健康状态进行监控,根据所述服务调用框架跟踪并记录调用链路;
所述运维系统用于系统日志分析、链路节点分析及分布式服务在线配置。
2.如权利要求1所述的基于微服务架构的菠菜云技术平台,其特征在于,所述数据库包括多种标准化数据库。
3.如权利要求2所述的基于微服务架构的菠菜云技术平台,其特征在于,所述数据库的类型包括oracle、mysql、redis、mongodb。
4.如权利要求1所述的基于微服务架构的菠菜云技术平台,其特征在于,所述通用业务工具包括日期处理、excel处理、字符串处理、聚类计算、文件操作、图片操作、分布式事务处理。
5.如权利要求1所述的基于微服务架构的菠菜云技术平台,其特征在于,所述运维系统的分布式配置中心包括配置界面服务、配置推送服务及配置客户端,所述配置界面服务后台连接所述配置推送服务,所述配置推送服务与多个所述配置客户端保持长连接。
6.如权利要求5所述的基于微服务架构的菠菜云技术平台,其特征在于,所述分布式服务在线配置的步骤包括:
所述配置推送服务接收配置发布命令;
所述配置推送服务将配置信息实时推送给指定的所述配置客户端;
所述配置客户端接收所述配置信息,动态刷新服务的相应配置项。
7.如权利要求6所述的基于微服务架构的菠菜云技术平台,其特征在于,所述配置界面服务提供图形界面。
8.如权利要求1所述的基于微服务架构的菠菜云技术平台,其特征在于,所述监控系统根据所述控制层框架和所述日志处理框架对服务健康状态进行监控的步骤包括:
所述日志处理框架将日志信息实时推送到kafka消息中间件;
日志分析服务实时消费所述kafka消息中间件中的日志信息,并进行数据的清洗和实时计算;
所述日志分析服务将实时信息放入到elasticsearch中进行存储,并由所述监控系统进行读取使用。
CN201911358737.XA 2019-12-25 2019-12-25 一种基于微服务架构的菠菜云技术平台 Pending CN111190580A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911358737.XA CN111190580A (zh) 2019-12-25 2019-12-25 一种基于微服务架构的菠菜云技术平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911358737.XA CN111190580A (zh) 2019-12-25 2019-12-25 一种基于微服务架构的菠菜云技术平台

Publications (1)

Publication Number Publication Date
CN111190580A true CN111190580A (zh) 2020-05-22

Family

ID=70707579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911358737.XA Pending CN111190580A (zh) 2019-12-25 2019-12-25 一种基于微服务架构的菠菜云技术平台

Country Status (1)

Country Link
CN (1) CN111190580A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107193546A (zh) * 2017-04-11 2017-09-22 国网天津市电力公司信息通信公司 一种微服务化业务应用系统
US20180309637A1 (en) * 2017-04-25 2018-10-25 Nutanix, Inc. Systems and methods for networked microservice modeling and visualization
CN109150599A (zh) * 2018-08-10 2019-01-04 山东浪潮通软信息科技有限公司 一种基于云架构的运维监控系统
CN109600269A (zh) * 2019-01-21 2019-04-09 云南电网有限责任公司信息中心 一种基于dcos的云管理平台
CN109803018A (zh) * 2019-01-24 2019-05-24 云南电网有限责任公司信息中心 一种基于Mesos和YARN结合的DCOS云管理平台
CN110321152A (zh) * 2019-07-04 2019-10-11 青岛华正信息技术股份有限公司 一种软件开发平台

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107193546A (zh) * 2017-04-11 2017-09-22 国网天津市电力公司信息通信公司 一种微服务化业务应用系统
US20180309637A1 (en) * 2017-04-25 2018-10-25 Nutanix, Inc. Systems and methods for networked microservice modeling and visualization
CN109150599A (zh) * 2018-08-10 2019-01-04 山东浪潮通软信息科技有限公司 一种基于云架构的运维监控系统
CN109600269A (zh) * 2019-01-21 2019-04-09 云南电网有限责任公司信息中心 一种基于dcos的云管理平台
CN109803018A (zh) * 2019-01-24 2019-05-24 云南电网有限责任公司信息中心 一种基于Mesos和YARN结合的DCOS云管理平台
CN110321152A (zh) * 2019-07-04 2019-10-11 青岛华正信息技术股份有限公司 一种软件开发平台

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
风中程序猿: ""微服务架构:基于微服务和Docker容器技术的PaaS云平台架构设计(微服务架构实施原理)"", 《HTTPS://WWW.CNBLOGS.COM/FANGFUHAI/P/7065847.HTML》 *

Similar Documents

Publication Publication Date Title
Chandarana et al. Big data analytics frameworks
Russom Managing big data
US10606711B2 (en) Recovery strategy for a stream processing system
US20190138367A1 (en) Managing Resource Allocation in a Stream Processing Framework
US8918363B2 (en) Data processing service
US9965330B2 (en) Maintaining throughput of a stream processing framework while increasing processing load
US8660987B2 (en) Data cache techniques in support of synchronization of databases in a distributed environment
US8938421B2 (en) Method and a system for synchronizing data
US7814470B2 (en) Multiple service bindings for a real time data integration service
US8060553B2 (en) Service oriented architecture for a transformation function in a data integration platform
US6738975B1 (en) Extensible distributed enterprise application integration system
Fowler et al. Grand challenges in modeling and simulation of complex manufacturing systems
US10296373B2 (en) Generic wait service: pausing and resuming a plurality of BPEL processes arranged in correlation sets by a central generic wait server
CN102880503B (zh) 数据分析系统及数据分析方法
US20180240062A1 (en) Collaborative algorithm development, deployment, and tuning platform
CN100440205C (zh) 利用联机分析处理变型先发地高速缓存的系统和方法
US6910053B1 (en) Method for data maintenance in a network of partially replicated database systems
Cai et al. DartFlow: A workflow management system on the web using transportable agents
Vera-Baquero et al. Real-time business activity monitoring and analysis of process performance on big-data domains
Lin et al. Scaling big data mining infrastructure: the twitter experience
US7184940B2 (en) Collaboration session recording model
US9077717B2 (en) Propagation and adoption of extensions across applications in networked solutions
US7865459B2 (en) Integration of a service-oriented transaction system with an information storage, access and analysis system
Dourish No SQL: The shifting materialities of database technology
US10684990B2 (en) Reconstructing distributed cached data for retrieval

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination