一种服务处理方法及系统技术方案

技术编号:19543042 阅读:41 留言:0更新日期:2018-11-24 20:29
本发明专利技术涉及一种服务处理方法及系统,其中所述服务处理系统包括:网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述网关层用于响应前端业务发起的服务请求,向所述RPC层调用与所述服务请求对应的RPC服务;所述RPC层用于提供RPC服务。本发明专利技术可以实现了项目与业务解耦,降低了系统的耦合度,提升了系统的响应效率,降低了误操作的概率,有利于多人协同开发,提升系统开发的效率。

A Service Processing Method and System

The present invention relates to a service processing method and system. The service processing system includes a gateway layer and a RPC service layer for remote procedure invocation. The gateway layer comprises a plurality of RPC interfaces. The gateway layer is connected with the RPC layer through the RPC interface. The RPC layer comprises a plurality of RPC services, in which each RPC service is provided. The gateway layer is used to respond to service requests initiated by front-end business and invoke RPC services corresponding to the service requests to the RPC layer, and the RPC layer is used to provide RPC services. The invention can realize project and business decoupling, reduce the coupling degree of the system, improve the response efficiency of the system, reduce the probability of misoperation, facilitate multi-person collaborative development, and improve the efficiency of system development.

【技术实现步骤摘要】
一种服务处理方法及系统
本专利技术涉及数据处理
,特别涉及一种服务处理系统及一种服务处理方法。
技术介绍
在企业的不断发展壮大和业务的多元化发展中,企业对信息化的依赖和需求不断增加,用信息化的各方面技术融合企业运营可以提高运营效率,大多数企业都采用一些数据系统来驱动企业的发展。但在现有技术中,这些数据系统存在如下方面的问题:1)web项目:核心业务全部在一个web项目中,这会导致:逻辑复杂、模块耦合、代码臃肿,修改难度大,版本迭代效率低下;系统启动慢,线上问题修复周期长;系统错误隔离性差、可用性差,任何一个模块的错误均可能造成整个系统的宕机;系统可伸缩性差,系统的扩容只能只对应用进行扩容,不能做到对某个功能点进行扩容;不利于多人协同开发。2)数据库:所有业务表、统计表均存放在同一个库,这会导致:库中包含了七、八十张表,容易误操作;数据出问题后,无法快速定位问题根源;新人需要更多时间熟悉数据库设计;数据库权限控制粒度较粗。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种服务处理系统及一种服务处理方法。本专利技术公开了一种服务处理系统,所述系统包括网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述网关层用于响应前端业务发起的服务请求,向所述RPC层调用与所述服务请求对应的RPC服务;所述RPC层用于提供RPC服务。优选地,所述RPC层包括服务注册中心以及一个或多个业务处理中心,其中,不同业务处理中心间通过接口交互,所述交互包括数据一致性处理;所述业务处理中心用于提供相应的RPC服务;所述服务注册中心用于进行RPC服务的服务注册,并维护所有一个或多个业务处理中心所暴露的RPC服务的信息。优选地,所述业务处理中心还用于在检测到自身故障或者故障消除时,生成故障信息或者故障消除信息,并将所述故障信息或者故障消除信息发送至服务注册中心,以通知服务注册中心进行状态变更;所述服务注册中心还用于当接收到所述故障信息或者故障消除信息时,对所述业务处理中心添加或者删除故障标识;以及,在接收到针对所述故障的业务处理中心的服务请求时,向请求方发送故障提示信息。优选地,所述系统还包括基础服务层,所述网关层还包括多个HTTP接口,所述网关层通过所述HTTP接口与所述基础服务层连接;所述基础服务层用于向所述网关层提供基础服务。优选地,所述数据库采用主从架构进行数据存储,包括主数据库以及从数据库;所述系统还包括统计系统,所述从数据库保存在所述统计系统所在的服务器中,所述统计系统具有对所述从数据库的读权限和/或读/写权限。优选地,所述系统还包括前端业务层以及网络接入层;其中,所述前端业务层用于展示业务数据,并检测用户触发的服务请求;所述网络接入层用于建立与所述网关层的网络连接。优选地,所述系统还包括监控系统,所述监控系统用于对数据通信过程进行监控,检测异常业务信息。本专利技术还公开了一种服务处理方法,所述方法应用于服务处理系统中,所述服务处理系统包括网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述方法包括:检测前端业务发起的服务请求;向所述RPC层调用与所述服务请求对应的RPC服务。本专利技术还公开了一种服务处理方法,所述方法应用于服务处理系统中,所述服务处理系统包括网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述方法包括:检测网关层是否调用RPC接口;当检测到所述网关层调用RPC接口时,向所述网关层提供对应的RPC服务。优选地,所述RPC层包括服务注册中心以及一个或多个业务处理中心;所述方法还包括:通过不同业务处理中心提供的接口,进行数据一致性处理。本专利技术具有如下有益效果:在本专利技术实施例中,通过RPC层将项目拆分成多个RPC服务,其中,每个RPC服务设置独立的数据库,网关层部署了多个RPC接口来与RPC层进行通信,调用RPC层提供的RPC服务,实现了项目与业务解耦,降低了系统的耦合度,提升了系统的响应效率,降低了误操作的概率,有利于多人协同开发,提升系统开发的效率。附图说明图1为本专利技术的一种服务处理系统实施例的结构框图;图2为本专利技术的一种服务处理系统另一实施例的结构框图;图3为本专利技术的一种服务处理方法实施例的步骤流程图;图4为本专利技术的一种服务处理方法另一实施例的步骤流程图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。参照图1,示出了本专利技术的一种服务处理系统实施例的结构框图,所述服务处理系统10可以包括网关层101以及远程过程调用RPC(RemoteProcedureCallProtocol)服务层102。其中,网关层101可以包括多个RPC接口,网关层101通过RPC接口与RPC层102连接,RPC层102可以包括多个RPC服务,其中,每个RPC服务具有独立的数据库(database,简称db)。在本专利技术实施例中,网关层101可以用于响应前端业务发起的服务请求,向所述RPC层102调用与所述服务请求对应的RPC服务;所述RPC服务层102可以用于提供RPC服务。在本专利技术实施例中,通过RPC层将项目拆分成多个RPC服务,其中,每个RPC服务设置独立的数据库,网关层部署了多个RPC接口来与RPC层进行通信,调用RPC层提供的RPC服务,实现了项目与业务解耦,降低了系统的耦合度,提升了系统的响应效率,降低了误操作的概率,有利于多人协同开发,提升系统开发的效率。参考图2,示出了本专利技术的一种服务处理系统另一实施例的结构框图。本专利技术实施例可以采用微服务架构对项目进行拆分,确定多个服务。无论有多少个服务,首先需要把接口识别和定义出来(在实现时可以通过RPC接口工程提供RPC接口定义,以及通过公共工程提供通用工具类、业务异常以及枚举常量等定义),然后消费和服务双方基于接口进行契约驱动开发,利用Mock服务提供者和消费者,互相解耦,实现并行开发。本专利技术实施例可以采用契约驱动测试,用于对兼容性做回归测试。具体的,上述测试可以包括单元测试、契约接口测试、集成测试等。其中最重要的就是契约测试。可以利用微服务框架提供的Mock机制,分别生成模拟消费者的客户端测试桩和提供者的服务端测试桩,双方可以基于Mock测试桩对微服务的接口契约进行测试,双方都不需要等待对方功能代码开发完成,实现了并行开发和测试,提高了微服务的构建效率。基于接口的契约测试还能快速的发现不兼容的接口变更,例如修改字段类型、删除字段等。在具体实现中,在本专利技术实施例进行服务部署时,可以遵循如下服务部署原则:独立构建和部署(构建过程中触发单元测试);生命周期管理自动化(服务的启动、停止、升级、回滚、下线、上线);部署环境独立(测试环境、灰度环境、生产环境);基础设施自动化本文档来自技高网...

【技术保护点】
1.一种服务处理系统,其特征在于,所述系统包括网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述网关层用于响应前端业务发起的服务请求,向所述RPC层调用与所述服务请求对应的RPC服务;所述RPC层用于提供RPC服务。

【技术特征摘要】
1.一种服务处理系统,其特征在于,所述系统包括网关层以及远程过程调用RPC服务层,所述网关层包括多个RPC接口,所述网关层通过所述RPC接口与所述RPC层连接,所述RPC层包括多个RPC服务,其中,每个RPC服务具有独立的数据库;所述网关层用于响应前端业务发起的服务请求,向所述RPC层调用与所述服务请求对应的RPC服务;所述RPC层用于提供RPC服务。2.根据权利要求1所述的系统,其特征在于,所述RPC层包括服务注册中心以及一个或多个业务处理中心,其中,不同业务处理中心间通过接口交互,所述交互包括数据一致性处理;所述业务处理中心用于提供相应的RPC服务;所述服务注册中心用于进行RPC服务的服务注册,并维护所有一个或多个业务处理中心所暴露的RPC服务的信息。3.根据权利要求2所述的系统,其特征在于,所述业务处理中心还用于在检测到自身故障或者故障消除时,生成故障信息或者故障消除信息,并将所述故障信息或者故障消除信息发送至服务注册中心,以通知服务注册中心进行状态变更;所述服务注册中心还用于当接收到所述故障信息或者故障消除信息时,对所述业务处理中心添加或者删除故障标识;以及,在接收到针对所述故障的业务处理中心的服务请求时,向请求方发送故障提示信息。4.根据权利要求1或2或3所述的系统,其特征在于,所述系统还包括基础服务层,所述网关层还包括多个HTTP接口,所述网关层通过所述HTTP接口与所述基础服务层连接;所述基础服务层用于向所述网关层提供基础服务。5.根据权利要求1所述的系统,其特征在于,所述数据库采用主从架构进行数据存储,包括主数据库以及从数据库;所述...

【专利技术属性】
技术研发人员:曾文清卢明
申请(专利权)人:广州市创乐信息技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1