本发明专利技术公开了一种基于微服务的多机房数据处理方法、电子设备及存储介质,其中,在配置中心为各个微服务配置主机房和从机房;具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;该方法包括:接收针对任一微服务的数据访问请求;根据配置中心的配置信息将数据访问请求路由至微服务的主机房;若数据访问请求为数据写入请求,则执行数据写入操作将数据写入至微服务的主机房的数据库中,并将数据写入操作同步给微服务的从机房,以供从机房执行数据写入操作。该方案为微服务配置主从机房,由微服务的主机房对针对该微服务的数据访问请求进行处理,还实现了从主机房至从机房的单方向的数据同步,有效地避免了在多机房场景下数据出现冲突。
Data processing method, electronic equipment and storage medium of multi computer room based on microservice
【技术实现步骤摘要】
基于微服务的多机房数据处理方法、电子设备及存储介质
本专利技术涉及信息处理
,具体涉及一种基于微服务的多机房数据处理方法、电子设备及存储介质。
技术介绍
用户可以利用客户端获取服务器提供的服务,例如从服务器中下载电子书、浏览电子书评论信息等。为了便于管理服务器及确保服务器业务正常运行,运营人员会将服务器存放在机房中,机房的温度、湿度以及防静电措施等都有严格的要求。为了防止机房中的服务器挂掉而导致服务中断的情况发生,一般会在多个地方设置机房,以便在一个机房挂掉后能够通过另外的机房提供可靠服务。用户通过任一机房都能访问到所需的服务,一般情况下域名服务器会为用户分配距离其较近的机房为其提供服务。为了确保多个机房随时能够提供可靠服务,多个机房中的数据需要进行同步,从而使多个机房中的数据保持一致。然而,在为用户提供服务的过程中,基于流量均衡、用户位置变化等原因,很有可能会出现为同一用户前后分配的机房不一致的情况,一旦后分配的机房在为用户提供服务时尚未完成数据同步,就很可能会出现前后机房数据不一致的情况,存在数据冲突的问题。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于微服务的多机房数据处理方法、电子设备及存储介质。根据本专利技术的一个方面,提供了一种基于微服务的多机房数据处理方法,在配置中心为各个微服务配置主机房和从机房;其中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;该方法包括:接收针对任一微服务的数据访问请求;根据配置中心的配置信息将数据访问请求路由至微服务的主机房;若数据访问请求为数据写入请求,则执行数据写入操作将数据写入至微服务的主机房的数据库中,并将数据写入操作同步给微服务的从机房,以供从机房执行数据写入操作。根据本专利技术的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行以下操作:在配置中心为各个微服务配置主机房和从机房;其中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;接收针对任一微服务的数据访问请求;根据配置中心的配置信息将数据访问请求路由至微服务的主机房;若数据访问请求为数据写入请求,则执行数据写入操作将数据写入至微服务的主机房的数据库中,并将数据写入操作同步给微服务的从机房,以供从机房执行数据写入操作。根据本专利技术的又一方面,提供了一种存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行以下操作:在配置中心为各个微服务配置主机房和从机房;其中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;接收针对任一微服务的数据访问请求;根据配置中心的配置信息将数据访问请求路由至微服务的主机房;若数据访问请求为数据写入请求,则执行数据写入操作将数据写入至微服务的主机房的数据库中,并将数据写入操作同步给微服务的从机房,以供从机房执行数据写入操作。根据本专利技术提供的技术方案,通过在配置中心为各个微服务配置主机房和从机房,实现了基于微服务的主从机房的精准配置,并且为具有彼此调用关系的多个微服务配置同一主机房和同一从机房,确保了具有彼此调用关系的多个微服务能够实时调用,不受机房专线和公网所存在的网络抖动等不稳定因素的影响;并且,根据配置中心的配置信息将针对微服务的数据访问请求路由至微服务的主机房,使得针对微服务的数据访问请求永远都由该微服务的主机房进行处理,从机房作为热备;在数据访问请求为数据写入请求的情况下,执行数据写入操作将数据写入至微服务的主机房的数据库中,并将数据写入操作同步给微服务的从机房,从机房执行数据写入操作,从而实现了从主机房至从机房的单方向的数据同步,有效地避免了在多机房场景下数据出现冲突,优化了多机房数据处理方式。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术实施例一的一种基于微服务的多机房数据处理方法的流程示意图;图2示出了根据本专利技术实施例二的一种基于微服务的多机房数据处理方法的流程示意图;图3示出了根据本专利技术实施例四的一种电子设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。实施例一图1示出了根据本专利技术实施例一的一种基于微服务的多机房数据处理方法的流程示意图,如图1所示,该方法包括如下步骤:步骤S101,接收针对任一微服务的数据访问请求。具体地,在配置中心预先为各个微服务配置主机房和从机房,微服务是指可被独立部署的、具有高内聚特性的服务,不同微服务之间还具有低耦合的特性。本领域技术人员可根据实际需要为各个微服务配置主机房和从机房,以确保机房流量均衡。假设电子书阅读服务器包含有4个微服务,这4个微服务分别为微服务A至微服务D,电子书阅读服务器对应有2个机房,分别为机房1和机房2,那么可将机房1配置为微服务A和微服务B的主机房,将机房2配置为微服务A和微服务B的从机房,另外,将机房2配置为微服务C和微服务D的主机房,将机房1配置为微服务C和微服务D的从机房。另外,多个微服务之间是可以彼此调用的,为了确保具有彼此调用关系的多个微服务能够实时调用,在本专利技术中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房。其中,针对每个微服务,该微服务的主机房用于提供对外数据访问,在主机房提供对外数据访问的情况下,从机房并不提供对外数据访问,而是作为热备,一旦主机房出现工作异常、故障等情况,从机房可以在很短的时间内代替主机房,完全实现主机房的功能,提供可靠的对外数据访问。当用户或业务运维人员等想要访问任一微服务的数据时,可发送针对该微服务的数据访问请求,其中,数据访问请求可携带有微服务标识、请求方法、请求内容、请求URL、请求的服务器地址、通信协议等信息;微服务标识可以为微服务名称或者微服务ID等。那么在步骤S101中接收针对任一微服务的数据访问请求。步骤S102,根据配置中心的配置信息将数据访问请求路由至微服务的主机房。在配置中心完成对各个微服务的主机房和从机房的配置后,生成配置信息,配置信息本文档来自技高网...
【技术保护点】
1.一种基于微服务的多机房数据处理方法,在配置中心为各个微服务配置主机房和从机房;其中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;/n所述方法包括:/n接收针对任一微服务的数据访问请求;/n根据配置中心的配置信息将数据访问请求路由至所述微服务的主机房;/n若所述数据访问请求为数据写入请求,则执行数据写入操作将数据写入至所述微服务的主机房的数据库中,并将所述数据写入操作同步给所述微服务的从机房,以供所述从机房执行所述数据写入操作。/n
【技术特征摘要】
1.一种基于微服务的多机房数据处理方法,在配置中心为各个微服务配置主机房和从机房;其中,具有彼此调用关系的多个微服务被配置为同一主机房和同一从机房;
所述方法包括:
接收针对任一微服务的数据访问请求;
根据配置中心的配置信息将数据访问请求路由至所述微服务的主机房;
若所述数据访问请求为数据写入请求,则执行数据写入操作将数据写入至所述微服务的主机房的数据库中,并将所述数据写入操作同步给所述微服务的从机房,以供所述从机房执行所述数据写入操作。
2.根据权利要求1所述的方法,所述在配置中心为各个微服务配置主机房和从机房进一步包括:
将具有彼此调用关系的多个微服务划分至同一个微服务分组中,得到多个微服务分组;
以微服务分组为单位,在配置中心为各个微服务分组配置主机房和从机房。
3.根据权利要求1所述的方法,所述根据配置中心的配置信息将数据访问请求路由至所述微服务的主机房进一步包括:
根据域名服务器内存储的配置信息,确定所述微服务的处理机房,并依据所述微服务的处理机房对所述数据访问请求进行路由处理;
根据网关内存储的配置信息,判断所述微服务的处理机房是否与所述微服务的主机房一致;
若是,则由所述微服务的主机房对所述数据访问请求进行处理;
若否,则将所述数据访问请求转发给所述微服务的主机房进行处理。
4.根据权利要求3所述的方法,所述将所述数据访问请求转发给所述微服务的主机房进行处理进一步包括:
通过公网或者设置于所述处理机房和所述微服务的主机房之间的机房专线,将所述数据访问请求转发给所述微服务的主机房进行处理。
5.根据权利要求4所述的方法,所述通过公网或者设置于所述处理机房和所述微服务的主机房之间的机房专线,将所述数据访问请求转发给所述微服务的主机房进行处理进一步包括:
通过所述机房专线将所述数据访问请求转发给所述微服务的主机房;
若转发失败,则通过公网将所述数据访问请求转发给所述微服务的主机房。
6.根据权利要求1-5任一项所述的方法,所述将所述数据写入操作同步给所述微服务的从机房,以供所述从机房执行所述数据写入操作进一步包括:
将所述数据写入操作的操作指令写入数据访问日志...
【专利技术属性】
技术研发人员:贺鹏飞,
申请(专利权)人:掌阅科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。