业务系统、数据修复方法及装置与流程

文档序号:18850782发布日期:2019-10-13 00:51阅读:182来源:国知局
业务系统、数据修复方法及装置与流程

本发明涉及网络技术领域,特别涉及一种业务系统、数据修复方法及装置。



背景技术:

随着网络技术的发展,通过网络提供的服务也越来越多,用户可以通过网络进行搜索查询、下载资料,还可以通过网络分享信息,该信息可以是文本、图片和视频信息等。

用户的网络活动产生大量的UGC(User Generated Content,用户原创内容)数据,在网络业务系统中,会提供业务对外服务器和业务对内服务器分别对UGC数据进行相应处理。其中,业务对外服务器用于接收UGC数据,以对外网用户提供服务;业务对内服务器用于遍历UGC数据,以供管理员查看和更新;为了不影响业务对外服务器的服务性能,业务对内服务器通过消息中间件获取业务对外服务器接收到的UGC数据;该消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流。

在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

通过上述方法处理UGC数据的过程中,当消息中间件由于网络波动,或者由于业务对内服务器出错以致于未能及时处理好由消息中间件传递的数据时,会导致数据丢失。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种业务系统、数据修复方法及装置。所述技术方案如下:

一方面,提供了一种业务系统,包括:日志管理服务器、业务对内服务器、业务对外服务器和消息中间件;

所述业务对外服务器用于接收业务数据,将所述业务数据通过所述消息中间件同步至所述业务对内服务器,将所述业务数据发送至所述日志管理服务器;

所述日志管理服务器用于接收所述业务对外服务器发送的业务数据,根据接收到的业务数据,生成业务日志,所述业务日志至少包括所述接收到的业务数据和所述业务数据接收时间;

所述日志管理服务器还用于比较自身所维护的所述业务日志和对内服务数据库中的业务数据,所述对内服务数据库用于存储所述业务对内服务器获取的同步数据;当所述业务日志不存在于所述业务对内服务器所维护的业务数据中,将所述业务日志写入所述对内服务数据库。

另一方面,提供了一种数据修复方法,所述方法包括:

接收业务对外服务器发送的业务数据,根据接收到的业务数据,生成业务日志,所述业务日志至少包括所述接收到的业务数据和业务数据接收时间;

比较所述业务日志和对内服务数据库中的业务数据,所述对内服务数据库用于存储所述业务对内服务器获取的同步数据,所述业务日志在业务对外服务器向业务对内服务器进行业务数据同步时生成;

当所述业务日志不存在于所述业务对内服务器所维护的业务数据中,将所述业务日志写入所述对内服务数据库。

本发明实施例提供的技术方案带来的有益效果是:

通过在原有业务系统的基础上增设了日志管理服务器,该日志管理服务器可以进行业务日志的维护,并通过比较自身所维护的业务日志和对内服务数据库中的业务数据,使得本发明实施例提供的系统能够在系统发生数据丢失时自动修复丢失的数据。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中一种业务系统的结构示意图;

图2是本发明实施例提供的一种业务系统的结构示意图;

图3是本发明实施例提供的基于本发明实施例提供的业务系统的数据修复方法流程图;

图4是本发明实施例提供的基于本发明实施例提供的业务系统的数据修复装置结构示意图;

图5是根据本发明实施例提供的一种服务器500的框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图2是本发明实施例提供的一种业务系统的结构示意图。参见图2,所述系统包括:业务对外服务器201、业务对内服务器202、日志管理服务器203和消息中间件204。

(1)所述业务对外服务器201用于接收业务数据,将所述业务数据通过所述消息中间件204同步至所述业务对内服务器202,将所述业务数据发送至所述日志管理服务器203。

该业务数据可以是用户在运营商提供的网络服务器上活动时生成的数据,也可以是其他数据,本发明实施例对此不作限定。在本发明实施例中,以业务数据为UGC(User Generated Content,用户原创数据)数据为例进行说明,UGC数据至少包括用户分享的信息,该信息可以为文本信息,也可以是图片、视频等多媒体信息,本发明实施例对此不作限定;该UGC数据还包括用户的标识信息,例如,昵称、头像、性别等。

例如,当终端检测到用户在指定网站上对分享选项的触发操作时,向业务对外服务器201发送分享请求,该分享请求携带该用户的分享内容以及该用户当前使用的账户信息,该用户的分享请求的内容即为UGC数据;该业务对外服务器201将该UGC数据存储至对外服务数据库中,该对外服务数据库存储的内容至少包括:用户的账户信息以及对应用户的分享内容,当然,还可以包括UGC数据的存储时间信息等其他信息,本发明实施例对该对外服务数据库中的存储内容不做限定。

需要说明的是,该指定网站可以为任一具有社交功能的网站,例如,论坛、微博等。当检测到用户对任一UGC数据的查看指令时,业务对外服务器201还可以将对应内容发送至用户当前终端中。

当管理员需要查看UGC数据或对UGC数据进行用户数据分析时,服务器则要根据相应指令获取相应UGC数据,然而,由于业务对外服务器201具有高速存储和数据读写能力差的特点,如果管理员直接向业务对外服务器201发送查看请求时,有可能会对该业务对外服务器201的性能造成影响,因此,该业务对外服务器201还用于将业务数据通过消息中间件204以异步方式同步至业务对内服务器202,以使得管理员能够通过业务对内服务器202处理用户的相应请求,为了保证请求处理质量和效率,该业务对内服务器202具有较好的遍历数据的能力。

当消息中间件由于网络波动等原因发生丢包,或者由于业务对内服务器202出错以致于未能接收或存储由消息中间件传递的数据时,会导致UGC数据丢失,为了避免丢失数据难以修复的问题出现,该业务对内服务器202还用于将所述业务数据发送至所述日志管理服务器203,以便于该日志管理服务器203能够自动修复丢失的数据。

(2)所述日志管理服务器203用于接收所述业务对外服务器201发送的业务数据,根据接收到的业务数据,生成业务日志,所述业务日志至少包括所述接收到的业务数据和所述业务数据接收时间。

业务对外服务器201每接收到一条UGC数据,都将接收到的该UGC数据同时发送至日志管理服务器203中,该日志管理服务器203根据接收到的UGC数据生成业务日志。

需要说明的是,为了便于之后对业务数据的更新和维护,在业务日志中还可以记录业务数据的接收时间,该业务数据接收时间可以是业务对外服务器201接收业务数据的时间,也可以是日志管理服务器203接收业务数据的时间,本发明实施例对此不作限定。

(3)所述日志管理服务器203还用于比较自身所维护的所述业务日志和对内服务数据库中的业务数据,所述对内服务数据库用于存储所述业务对内服务器获取的同步数据;当所述业务日志不存在于所述业务对内服务器所维护的业务数据中,将所述业务日志写入所述对内服务数据库,当所述业务日志存在于所述业务对内服务器所维护的业务数据中,确定所述对内服务数据库中未丢失与所述业务日志对应的业务数据。

为了在实现日志管理服务器203对业务数据维护的同时,能够降低该日志管理服务器的运算量,可以通过设置预设周期,使该日志管理服务器根据该预设周期,周期性分析业务日志;也即是,所述日志管理服务器用于每隔预设周期,执行所述比较自身所维护的所述业务日志和对内服务数据库中的业务数据的步骤。

为了避免业务日志中记录数据过多,所述日志管理服务器203还用于当所述业务日志存在于所述业务对内服务器202所维护的业务数据中,则删除所述业务日志;也即是,以业务日志中任一条记录为索引,检查该对内服务数据库,并确定该对内服务数据库未丢失该条记录对应的UGC数据时,从业务日志中删除该条记录。其中,预设周期可以根据UGC数据的类型进行设置,也可以根据网站类型进行设置,当然,也可以将该预设周期设置为任一固定值,本发明实施例对该预设周期的设置方法不作限定。

日志管理服务器203对比业务日志和对内服务数据库中的业务数据的方法可以为:日志管理服务器203每隔预设周期,以业务日志中任一条记录为索引,检查对内服务数据库中是否存在与该条记录对应的UGC数据,如果对内服务数据库中不存在与该条记录对应的UGC数据,确定该UGC数据为丢失数据,日志管理服务器203将业务日志中的该条记录写入对内服务数据库中;如果对内服务数据库中不存在与该条记录对应的UGC数据,确定对内服务数据库中未丢失与该条记录对应的UGC数据。再以该条记录为起点,按照记录顺序,依次根据业务日志中的每条记录检查对内服务数据库中是否有数据丢失,并对丢失数据自动进行修复。

可选地,也可以每隔预设时长批量删除已对比的业务日志,该预设时长可以与预设周期相同,也可以不同,本发明实施例对此不作限定。

本发明实施例提供的系统,通过在原有业务系统的基础上增设了日志管理服务器,该日志管理服务器可以进行业务日志的维护,并通过比较自身所维护的业务日志和对内服务数据库中的业务数据,使得本发明实施例提供的系统能够在系统发生数据丢失时自动修复丢失的数据。

图3是本发明实施例提供的基于本发明实施例提供的业务系统的数据修复方法流程图。该数据修复方法的执行主体为本发明实施例提供的业务系统中的日志管理服务器,该方法包括:

301、接收业务对外服务器发送的业务数据,根据接收到的业务数据,生成业务日志,所述业务日志至少包括所述接收到的业务数据和业务数据接收时间。

将接收到的一条业务数据作为业务日志中的一条记录,以使得当对内服务数据库中丢失数据时,日志管理服务器能够通过对比对内服务数据库和该业务日志,实现对数据的自动修复。

302、比较业务日志和对内服务数据库中的业务数据,所述对内服务数据库用于存储所述业务对内服务器获取的同步数据,所述业务日志在业务对外服务器向业务对内服务器进行业务数据同步时生成。

日志管理服务器,每隔预设周期,执行所述比较业务日志和对内服务数据库中的业务数据的步骤,以确定业务员对内服务数据库中的丢失数据。

303、当所述业务日志不存在于所述业务对内服务器所维护的业务数据中,将所述业务日志写入所述对内服务数据库。

为了避免业务日志中记录数据过多,日志管理服务器对内服务数据库中丢失数据重新写入后,则删除该丢失数据对应的业务日志,也可以每隔预设时长批量删除已对比的业务日志。

本发明实施例提供的基于本发明实施例提供的业务系统的数据修复方法,通过日志管理服务器分析业务日志的方式,能够在系统发生数据丢失时自动修复丢失的数据;进一步地,通过删除业务日志,可以避免业务日志中的记录累积,从而能够保证日志管理服务器长时间稳定运行。

图4是本发明实施例提供的基于本发明实施例提供的业务系统的数据修复装置结构示意图。该装置包括:处理模块401,比较模块402和数据写入模块403。

处理模块401,用于接收业务对外服务器发送的业务数据,根据接收到的业务数据,生成业务日志,所述业务日志至少包括所述接收到的业务数据和业务数据接收时间。

比较模块402,用于比较业务日志和对内服务数据库中的业务数据,所述对内服务数据库用于存储所述业务对内服务器获取的同步数据,所述业务日志在业务对外服务器向业务对内服务器进行业务数据同步时生成;

数据写入模块403,用于当所述业务日志不存在于所述业务对内服务器所维护的业务数据中,将所述业务日志写入所述对内服务数据库。

在本发明提供的第一种可能实现方式中,所述装置还包括:

接收模块,用于接收所述业务对外服务器发送的业务数据,根据接收到的业务数据,生成所述业务日志。

在本发明提供的第二种可能实现方式中,所述比较模块402用于:

每隔预设周期,执行所述比较业务日志和对内服务数据库中的业务数据的步骤。

上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。

需要说明的是:上述实施例提供的数据修复装置在修复数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据修复装置与数据修复方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图5是根据本发明实施例提供的一种服务器500的框图。参照图5,装置500包括处理组件522,其进一步包括一个或多个处理器,以及由存储器532所代表的存储器资源,用于存储可由处理部件522的执行的指令,例如应用程序。存储器532中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件522被配置为执行指令,以执行上述各个集群中服务器侧所执行的方法。

装置500还可以包括一个电源组件526被配置为执行装置500的电源管理,一个有线或无线网络接口550被配置为将装置500连接到网络,和一个输入输出(I/O)接口558。装置500可以操作基于存储在存储器532的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1