CN112542002A - 一种租车系统控制方法及装置 - Google Patents
一种租车系统控制方法及装置 Download PDFInfo
- Publication number
- CN112542002A CN112542002A CN201910899621.0A CN201910899621A CN112542002A CN 112542002 A CN112542002 A CN 112542002A CN 201910899621 A CN201910899621 A CN 201910899621A CN 112542002 A CN112542002 A CN 112542002A
- Authority
- CN
- China
- Prior art keywords
- service
- module
- attribute information
- message
- registration
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000008878 coupling Effects 0.000 abstract description 17
- 238000010168 coupling process Methods 0.000 abstract description 17
- 238000005859 coupling reaction Methods 0.000 abstract description 17
- 230000003993 interaction Effects 0.000 description 16
- 238000011161 development Methods 0.000 description 14
- 238000012423 maintenance Methods 0.000 description 6
- 230000006855 networking Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/0042—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for hiring of objects
- G07F17/0057—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for hiring of objects for the hiring or rent of vehicles, e.g. cars, bicycles or wheelchairs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Coin-Freed Apparatuses For Hiring Articles (AREA)
Abstract
本发明提供了一种租车系统控制方法及装置,所述租车系统控制方法,应用于服务注册中心,包括:接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。上述方案,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
Description
技术领域
本发明涉及汽车领域,特别涉及一种租车系统控制方法及装置。
背景技术
传统租车系统缺少比较规范的系统架构,导致系统在业务不断迭代过程中会遭遇各种瓶颈。例如:模块之间耦合度太高,其中一个功能升级,其他的模块都需要一起升级部署;开发困难,各个团队开发最后都需要整合在一起;系统扩展性差;不能灵活进行分布式部署。
发明内容
本发明实施例提供一种租车系统控制方法及装置,用以解决传统租车系统中各模块之间耦合度太高的问题。
为了解决上述技术问题,本发明采用如下技术方案:
依据本发明的一个方面,提供了一种租车系统控制方法,应用于服务注册中心,包括:
接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
可选地,还包括:
在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
可选地,还包括:
接收所述第一服务模块周期性发送的心跳消息;
在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
依据本发明的另一个方面,提供了一种租车系统控制方法,应用于第一服务模块,包括:
在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
可选地,还包括:
在预定时间间隔内,周期性向所述服务中心发送心跳消息。
依据本发明的另一个方面,提供了一种租车系统控制方法,应用于内外部应用接口模块,包括:
接收外部使用者发送的第一服务的服务调用请求;
根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
根据所述第一服务的服务属性信息,进行所述第一服务的调用。
可选地,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
可选地,还包括:
在启动时,向远程配置中心获取配置资源。
依据本发明的另一个方面,提供了一种租车系统控制装置,应用于服务注册中心,包括:
第一接收模块,用于接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一注册模块,用于根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
可选地,还包括:
第一广播模块,用于在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
第二广播模块,用于在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
可选地,还包括:
第二接收模块,用于接收所述第一服务模块周期性发送的心跳消息;
第三广播模块,用于在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
依据本发明的另一个方面,提供了一种租车系统控制装置,应用于第一服务模块,包括:
第一发送模块,用于在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第二发送模块,用于在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
第三接收模块,用于在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
第三发送模块,用于在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
可选地,还包括:
第四发送模块,用于在预定时间间隔内,周期性向所述服务中心发送心跳消息。
依据本发明的另一个方面,提供了一种租车系统控制装置,应用于内外部应用接口模块,包括:
第四接收模块,用于接收外部使用者发送的第一服务的服务调用请求;
第五接收模块,用于根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一控制模块,用于根据所述第一服务的服务属性信息,进行所述第一服务的调用。
可选地,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
可选地,还包括:
第六接收模块,用于在启动时,向远程配置中心获取配置资源。
本发明的有益效果是:
上述方案,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
附图说明
图1表示本发明实施例提供的租车系统控制方法示意图之一;
图2表示本发明实施例提供的租车系统控制方法示意图之二;
图3表示本发明实施例提供的租车系统控制方法示意图之三;
图4表示本发明实施例提供的租车系统控制装置示意图之一;
图5表示本发明实施例提供的租车系统控制装置示意图之二;
图6表示本发明实施例提供的租车系统控制装置示意图之三;
图7表示本发明实施例提供的租车系统示意图之一;
图8表示本发明实施例提供的租车系统示意图之二。
附图标记说明:
41-第一接收模块;42-第一注册模块;51-第一发送模块;52-第二发送模块;53-第三接收模块;54-第三发送模块;61-第四接收模块;62-第五接收模块;63-第一控制模块。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
本发明针对传统租车系统中各模块之间耦合度太高的问题,提供一种租车系统控制方法及装置。
如图1所示,本发明其中一实施例提供一种租车系统控制方法,应用于服务注册中心,包括:
S11:接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
S12:根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
可选地,还包括:
在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
具体的,本发明实施例提供的租车系统包括1个或多个服务,通过负载均衡策略进行服务调用,所述负载均衡策略至少包括以下一项:最近最少用策略、随机策略或回话保持策略。在服务重启时,服务模块向服务注册中心发送重启请求消息,服务注册中心则向所有使用该服务的使用者广播服务移除的消息;服务重启完成后,会向服务注册中心发送增加新服务的消息,服务注册中心会向所有使用者广播服务发布的消息。
可选地,还包括:
接收所述第一服务模块周期性发送的心跳消息;
在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
也就是说,服务注册中心会定期收到服务上报的心跳消息,来维护系统的可使用性。
需要说明的是,所述内外部应用接口模块通过http协议与所述服务进行数据交互。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端(Telematics BOX,简称T-BOX)车机操控网关。
把系统拆分成多个工程,完成系统的工程需要多个工程协作完成,这种形式就叫做分布式。在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
如图2所示,本发明实施例还提供一种租车系统控制方法,应用于第一服务模块,包括:
S21:在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
S22:在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
S23:在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
S24:在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
需要说明的是,远程配置中心,主要是为了内外部应用接口模块、服务模块和网关在启动时通过http方式加载通用配置,获取配置资源,实现系统参数配置化的目的,从而保证配置的统一性和不可篡改性。
还需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
具体的,本发明实施例提供的租车系统包括1个或多个服务,通过负载均衡策略进行服务调用,所述负载均衡策略至少包括以下一项:最近最少用策略、随机策略或回话保持策略。在服务重启时,服务模块向服务注册中心发送重启请求消息,服务注册中心则向所有使用该服务的使用者广播服务移除的消息;服务重启完成后,会向服务注册中心发送增加新服务的消息,服务注册中心会向所有使用者广播服务发布的消息。
可选地,还包括:
在预定时间间隔内,周期性向所述服务中心发送心跳消息。
也就是说,服务会定期向服务注册中心上报心跳消息,来维护系统的可使用性。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端T-BOX车机操控网关。
在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
如图3所示,本发明实施例还提供一种租车系统控制方法,应用于内外部应用接口模块,包括:
S31:接收外部使用者发送的第一服务的服务调用请求;
S32:根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
S33:根据所述第一服务的服务属性信息,进行所述第一服务的调用。
具体的,所述外部使用者包括用户和车机,内外部应用接口模块通过http协议与服务进行数据交互。
需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
可选地,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
可选地,还包括:
在启动时,向远程配置中心获取配置资源。
需要说明的是,远程配置中心,主要是为了内外部应用接口模块、服务模块和网关在启动时通过http方式加载通用配置,获取配置资源,实现系统参数配置化的目的,从而保证配置的统一性和不可篡改性。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端T-BOX车机操控网关。
在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
如图4所示,本发明实施例还提供一种租车系统控制装置,应用于服务注册中心,包括:
第一接收模块41,用于接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一注册模块42,用于根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
可选地,还包括:
第一广播模块,用于在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
第二广播模块,用于在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
具体的,本发明实施例提供的租车系统包括1个或多个服务,通过负载均衡策略进行服务调用,所述负载均衡策略至少包括以下一项:最近最少用策略、随机策略或回话保持策略。在服务重启时,服务模块向服务注册中心发送重启请求消息,服务注册中心则向所有使用该服务的使用者广播服务移除的消息;服务重启完成后,会向服务注册中心发送增加新服务的消息,服务注册中心会向所有使用者广播服务发布的消息。
可选地,还包括:
第二接收模块,用于接收所述第一服务模块周期性发送的心跳消息;
第三广播模块,用于在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
也就是说,服务注册中心会定期收到服务上报的心跳消息,来维护系统的可使用性。
需要说明的是,所述内外部应用接口模块通过http协议与服务进行数据交互。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端T-BOX车机操控网关。
把系统拆分成多个工程,完成系统的工程需要多个工程协作完成,这种形式就叫做分布式。在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
如图5所示,本发明实施例还提供一种租车系统控制装置,应用于第一服务模块,包括:
第一发送模块51,用于在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第二发送模块52,用于在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
第三接收模块53,用于在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
第三发送模块54,用于在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
需要说明的是,远程配置中心,主要是为了内外部应用接口模块、服务模块和网关在启动时通过http方式加载通用配置,获取配置资源,实现系统参数配置化的目的,从而保证配置的统一性和不可篡改性。
还需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
具体的,本发明实施例提供的租车系统包括1个或多个服务,通过负载均衡策略进行服务调用,所述负载均衡策略至少包括以下一项:最近最少用策略、随机策略或回话保持策略。在服务重启时,服务模块向服务注册中心发送重启请求消息,服务注册中心则向所有使用该服务的使用者广播服务移除的消息;服务重启完成后,会向服务注册中心发送增加新服务的消息,服务注册中心会向所有使用者广播服务发布的消息。
可选地,还包括:
第四发送模块,用于在预定时间间隔内,周期性向所述服务中心发送心跳消息。
也就是说,服务会定期向服务注册中心上报心跳消息,来维护系统的可使用性。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端T-BOX车机操控网关。
把系统拆分成多个工程,完成系统的工程需要多个工程协作完成,这种形式就叫做分布式。在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
如图6所示,本发明实施例还提供一种租车系统控制装置,应用于内外部应用接口模块,包括:
第四接收模块61,用于接收外部使用者发送的第一服务的服务调用请求;
第五接收模块62,用于根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一控制模块63,用于根据所述第一服务的服务属性信息,进行所述第一服务的调用。
需要说明的是,内外部应用接口模块通过http协议与服务进行数据交互。
还需要说明的是,本发明实施例提供的租车系统包括一个或多个服务注册中心,用于协调各个服务的发布与管理,其主要目的是解决内外部应用接口模块与服务模块之间因耦合度太高,而导致不能快速增加服务或移除服务的问题。
可选地,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
可选地,还包括:
第六接收模块,用于在启动时,向远程配置中心获取配置资源。
需要说明的是,远程配置中心,主要是为了内外部应用接口模块、服务模块和网关在启动时通过http方式加载通用配置,获取配置资源,实现系统参数配置化的目的,从而保证配置的统一性和不可篡改性。
还需要说明的是,本发明实施例提供的租车系统还包括长连接网关模块,用于外部使用者即用户或车机发起数据交互请求时,用户或车机通过长连接网关模块与服务(约定好的服务接口)进行数据交互。服务模块根据注册中心配置的负载均衡算法和hessian协议提供服务。
如图7-8所示,在本发明实施例中的租车系统架构中,长连接网关模块、内外部应用接口模块和服务模块是核心模块,通过他们之间的相互调用来完成业务处理。根据本发明的至少一个实施例,系统架构层次结构划分为:前端应用,包括手机应用、H5和小程序应用;服务层,包括通用服务以及各个业务自用服务,例如图7所示用户服务、订单服务和位置服务等;数据层,包括结构化数据库mySQL、非结构数据库MongoDB、tsdb时序数据以及缓存数据库Redis;后台系统,包括统一权限中心及其它管理系统;接口层,包括内部接口及外部接口;协议网关,包括车联网数据接入网关、无源gps数据接入网关以及智能车载终端T-BOX车机操控网关。
把系统拆分成多个工程,完成系统的工程需要多个工程协作完成,这种形式就叫做分布式。在服务层,如果不采用分布式rest服务方式架构,就需要在手机wap商城、微信商城、pc、android和ios每个客户端都写一个服务层逻辑,开发量大,难以维护一起升级;如果采用分布式rest服务方式,可以公用一个服务层。本发明实施例,采用分布式把系统拆分成多个独立的工程,单节点运行,如果某一个节点压力大了可以单独对这个节点进行增加配置,其他节点不受影响。把项目拆分成若干个子项目,由不同的团队负责不同的子项目;需要增加功能时只需要再增加一个子项目,调用其他系统的接口即可;网关协议适配多平台标准;开发业务只针对前端和后台管理,其它模块进行基础架构迭代;服务与数据进行交互,其它则不具有数据操作权限。
本发明实施例中,通过模块拆分,使用接口通信,降低了模块之间的耦合度;可以灵活地进行分布式部署,提高了代码的复用性。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。
Claims (16)
1.一种租车系统控制方法,应用于服务注册中心,其特征在于,包括:
接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
2.根据权利要求1所述的租车系统控制方法,其特征在于,还包括:
在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
3.根据权利要求2所述的租车系统控制方法,其特征在于,还包括:
接收所述第一服务模块周期性发送的心跳消息;
在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
4.一种租车系统控制方法,应用于第一服务模块,其特征在于,包括:
在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
5.根据权利要求4所述的租车系统控制方法,其特征在于,还包括:
在预定时间间隔内,周期性向所述服务中心发送心跳消息。
6.一种租车系统控制方法,应用于内外部应用接口模块,其特征在于,包括:
接收外部使用者发送的第一服务的服务调用请求;
根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
根据所述第一服务的服务属性信息,进行所述第一服务的调用。
7.根据权利要求6所述的租车系统控制方法,其特征在于,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
8.根据权利要求6所述的租车系统控制方法,其特征在于,还包括:
在启动时,向远程配置中心获取配置资源。
9.一种租车系统控制装置,应用于服务注册中心,其特征在于,包括:
第一接收模块,用于接收第一服务模块发送的第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一注册模块,用于根据所述注册请求,注册所述第一服务,以便内外部应用接口模块获取第一服务的服务属性信息。
10.根据权利要求9所述的租车系统控制装置,其特征在于,还包括:
第一广播模块,用于在接收到所述第一服务模块发送的重启请求消息时,向内外部应用接口模块广播移除所述第一服务的服务移除消息;
第二广播模块,用于在接收到所述第一服务模块发送的重启完成消息时,向所述内外部应用接口模块广播新增所述第一服务的服务发布消息,所述服务发布消息携带有所述第一服务的服务属性信息。
11.根据权利要求10所述的租车系统控制装置,其特征在于,还包括:
第二接收模块,用于接收所述第一服务模块周期性发送的心跳消息;
第三广播模块,用于在超过预定时间间隔没有收到所述心跳消息时,向所述内外部应用接口模块广播所述第一服务不可被调用的消息。
12.一种租车系统控制装置,应用于第一服务模块,其特征在于,包括:
第一发送模块,用于在注册第一服务时,向服务注册中心发送第一服务的注册请求,所述注册请求携带有第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第二发送模块,用于在重启第一服务时,向所述服务注册中心发送所述第一服务的重启请求消息,并进行重启;
第三接收模块,用于在重启第一服务后,向远程配置中心获取第一服务的配置资源,并根据所述配置资源进行配置;
第三发送模块,用于在所述配置完成后,向所述服务注册中心发送所述第一服务的重启完成消息,所述重启完成消息携带有所述第一服务的服务属性信息。
13.根据权利要求12所述的租车系统控制装置,其特征在于,还包括:
第四发送模块,用于在预定时间间隔内,周期性向所述服务中心发送心跳消息。
14.一种租车系统控制装置,应用于内外部应用接口模块,其特征在于,包括:
第四接收模块,用于接收外部使用者发送的第一服务的服务调用请求;
第五接收模块,用于根据所述服务调用请求,向服务注册中心获取第一服务的服务属性信息,所述服务属性信息包括以下信息中的至少一种:服务标识、接口标识、接口数量、服务所在的端口号以及负载均衡策略;
第一控制模块,用于根据所述第一服务的服务属性信息,进行所述第一服务的调用。
15.根据权利要求14所述的租车系统控制装置,其特征在于,根据所述第一服务的服务属性信息,进行所述第一服务的调用的步骤包括:
根据提供所述第一服务的至少一个服务模块的服务均衡策略,确定所述第一服务的目标提供者,向所述目标提供者发送所述第一服务的调用命令。
16.根据权利要求14所述的租车系统控制装置,其特征在于,还包括:
第六接收模块,用于在启动时,向远程配置中心获取配置资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910899621.0A CN112542002A (zh) | 2019-09-23 | 2019-09-23 | 一种租车系统控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910899621.0A CN112542002A (zh) | 2019-09-23 | 2019-09-23 | 一种租车系统控制方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112542002A true CN112542002A (zh) | 2021-03-23 |
Family
ID=75012878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910899621.0A Pending CN112542002A (zh) | 2019-09-23 | 2019-09-23 | 一种租车系统控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112542002A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113067890A (zh) * | 2021-04-07 | 2021-07-02 | 武汉光庭信息技术股份有限公司 | 一种适用于智能座舱的动态注册服务方法及智能座舱 |
CN113132472A (zh) * | 2021-04-07 | 2021-07-16 | 武汉光庭信息技术股份有限公司 | 车载T-Box的RESTful Web动态服务注册方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193674A1 (en) * | 2003-03-31 | 2004-09-30 | Masahiro Kurosawa | Method and system for managing load balancing in system |
CN105812478A (zh) * | 2016-04-18 | 2016-07-27 | 宁波轩悦行电动汽车服务有限公司 | 一种手机app通信系统及负载均衡方法及租车方法 |
CN105827718A (zh) * | 2016-04-18 | 2016-08-03 | 宁波轩悦行电动汽车服务有限公司 | 一种客户端通信系统及负载均衡方法及租车方法 |
CN106941508A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 服务调用方法、装置和系统 |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
CN109361525A (zh) * | 2018-10-25 | 2019-02-19 | 珠海派诺科技股份有限公司 | 重启分布式部署多服务的方法、装置、控制终端及介质 |
CN109862051A (zh) * | 2017-11-30 | 2019-06-07 | 亿阳信通股份有限公司 | 一种微服务架构下多租户的实现方法及系统 |
-
2019
- 2019-09-23 CN CN201910899621.0A patent/CN112542002A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193674A1 (en) * | 2003-03-31 | 2004-09-30 | Masahiro Kurosawa | Method and system for managing load balancing in system |
CN106941508A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 服务调用方法、装置和系统 |
CN105812478A (zh) * | 2016-04-18 | 2016-07-27 | 宁波轩悦行电动汽车服务有限公司 | 一种手机app通信系统及负载均衡方法及租车方法 |
CN105827718A (zh) * | 2016-04-18 | 2016-08-03 | 宁波轩悦行电动汽车服务有限公司 | 一种客户端通信系统及负载均衡方法及租车方法 |
CN109862051A (zh) * | 2017-11-30 | 2019-06-07 | 亿阳信通股份有限公司 | 一种微服务架构下多租户的实现方法及系统 |
CN109361525A (zh) * | 2018-10-25 | 2019-02-19 | 珠海派诺科技股份有限公司 | 重启分布式部署多服务的方法、装置、控制终端及介质 |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113067890A (zh) * | 2021-04-07 | 2021-07-02 | 武汉光庭信息技术股份有限公司 | 一种适用于智能座舱的动态注册服务方法及智能座舱 |
CN113132472A (zh) * | 2021-04-07 | 2021-07-16 | 武汉光庭信息技术股份有限公司 | 车载T-Box的RESTful Web动态服务注册方法 |
CN113132472B (zh) * | 2021-04-07 | 2022-08-02 | 武汉光庭信息技术股份有限公司 | 车载T-Box的RESTful Web动态服务注册方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7604162B2 (en) | Method and system for management of terminal devices | |
CN110851278A (zh) | 一种基于微服务架构的配网自动化主站移动应用服务管理方法和系统 | |
CN111901705B (zh) | 一种olt设备的omci功能虚拟化系统 | |
CN104679528B (zh) | 应用程序远程更新的方法和装置 | |
CN102780922B (zh) | 数字电视搜台方法及搜台系统 | |
CN101257406B (zh) | 网元发现方法和系统 | |
CN110138876B (zh) | 任务部署方法、装置、设备及平台 | |
CN110289965B (zh) | 一种应用程序服务的管理方法及装置 | |
CN101998227B (zh) | 业务路由方法、装置及系统 | |
CN101299674B (zh) | 实现终端标识的方法、系统及管理平台 | |
CN112542002A (zh) | 一种租车系统控制方法及装置 | |
WO2016127612A1 (zh) | 监控处理方法及装置 | |
US10097646B2 (en) | Method and device for enabling or disabling server in wireless communication system | |
CN111901440B (zh) | 一种多通道消息推送方法及装置 | |
CN110958150B (zh) | 一种服务动态配置的管理方法及装置 | |
CN101212346B (zh) | 一种网元管理系统的软件版本管理方法及装置 | |
CN110417876A (zh) | 会话方法、分布式系统中的节点服务器及主控设备 | |
CN109039427B (zh) | 一种船舶监控管理装置 | |
CN116567094A (zh) | 一种基于微服务系统的服务信息处理方法 | |
CN113824587B (zh) | 一种多通信协议设备管理方法及系统 | |
CN115694609A (zh) | 卫星遥测数据处理方法及服务系统 | |
CN109274715A (zh) | 车载多通道通信系统的平台资源管理系统 | |
CN114090057A (zh) | Ota消息、v2x ota终端及升级方法 | |
CN114866970A (zh) | 策略控制方法、系统和相关设备 | |
CN114040149A (zh) | 一种业务数字化智能演进的设备监控方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210323 |
|
RJ01 | Rejection of invention patent application after publication |