CN104601354B - 一种业务日志存储方法、装置及系统 - Google Patents
一种业务日志存储方法、装置及系统 Download PDFInfo
- Publication number
- CN104601354B CN104601354B CN201310530737.XA CN201310530737A CN104601354B CN 104601354 B CN104601354 B CN 104601354B CN 201310530737 A CN201310530737 A CN 201310530737A CN 104601354 B CN104601354 B CN 104601354B
- Authority
- CN
- China
- Prior art keywords
- server
- log
- target
- master
- standby
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000000151 deposition Methods 0.000 claims description 8
- 230000004083 survival effect Effects 0.000 claims description 5
- 238000005259 measurement Methods 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000002688 persistence Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
一种业务日志存储方法,包括:接收业务服务器的查询请求查询目标主日志缓存服务器的存活状态,若存活状态为可用状态,则将该存活状态发送给该业务服务器,使得该业务服务器将业务日志发送给该目标主日志缓存服务器,若存活状态为不可用状态,则确定缓存业务日志文件的目标备日志缓存服务器,并将该备日志缓存服务器的标识发送至该业务服务器,使得该业务服务器将业务日志文件发送给该目标备日志缓存服务器。上述业务日志存储方法、装置及系统可将所有的备日志缓存服务器的数量减少至要同一时间主日志缓存服务器可能宕机的最大数目。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种业务日志存储方法、装置及系统。
背景技术
作为互联网服务提供方,对运营日志进行分析是优化改善服务最重要的一环。为了最大程度地保证分析优化的效果,运营日志的可靠入库,不丢数据,就显得非常重要。
现有技术中,业务系统同时发送相同的运营日志给到主日志缓存接收服务器、备日志缓存接收服务器,主日志缓存接收服务器、备日志缓存接收服务器分别实时接收运行日志并缓存在本地。定期将日志数据文件发送给归档服务器。这样,归档服务器收到两份日志数据文件,而只需要保存其中的一份即可,丢弃另一份日志数据文件。
在以上现有技术中,通过发送两份运营日志给归档服务器来解决运营日志可靠入库的问题,要成倍投入日志缓存接收服务器,在面对海量运营日志入库时,所需机器成本大。
发明内容
有鉴于此,本发明提供一种业务日志存储方法、装置及系统,其可减少备日志缓存服务器的数量。
一种业务日志存储方法,用于日志路由服务器中,包括:
获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态;
若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器;
若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器,并将所述备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器。
一种业务日志存储方法,用于日志路由服务器中,包括:
获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收应用服务器的路由查询请求,所述路由查询请求内包含业务标识;
根据预定的路由规则获取与所述业务标识对应的主日志缓存服务器;
若所述对应的主日志缓存服务器的存活状态为可用则将所述对应的主日志缓存服务器作为目标日志缓存服务器;否则从可用的备日志缓存服务器内获取一个备日志缓存服务器作为所述目标日志缓存服务器;
将所述目标日志缓存服务器的标识发送至所述应用服务器,使得所述应用服务器将业务日志文件发送给所述目标日志缓存服务器。
一种业务日志存储装置,包括:
状态获取单元,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收单元,用于接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态;
第一发送单元,用于若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器;以及
第二发送单元,用于若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器;将所述备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器。
一种业务日志存储系统,包括:
日志路由服务器、主日志缓存服务器以及备日志缓存服务器;
所述日志路由服务器,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态,接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态,若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器,若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器,标记所述目标备日志缓存服务器为占用状态,并将所述备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器;
所述主日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;所述备日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件。
一种业务日志存储系统,包括:
日志路由服务器、主日志缓存服务器以及备日志缓存服务器;
所述日志路由服务器,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态,接收业务服务器的路由查询请求,所述路由查询请求内包含业务标识,根据预定的路由规则获取与所述业务标识对应的主日志缓存服务器,若所述对应的主日志缓存服务器的存活状态为可用则将所述对应的主日志缓存服务器作为目标日志缓存服务器;否则从可用的备日志缓存服务器内获取一个备日志缓存服务器作为所述目标日志缓存服务器,将所述目标日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标日志缓存服务器;
所述主日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;所述备日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件。
根据上述的日志存储方法、装置及系统,无须再针对每个主日志缓存服务器设置一个备日志缓存服务器,所有的备日志缓存服务器的数量只需要同一时间主日志缓存服务器可能宕机的最大数目。以100台主日志缓存服务器101为例,根据统计记录,这个数目差不多在3台左右。因此,采用上述的技术方案,相比于传统的备份机制可以显著减少备日志缓存服务器的数量,降低运营成本。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为第一实施例提供的业务日志存储系统的结构示意图。
图2为第二实施例提供的业务日志存储方法的流程图。
图3为第三实施例提供的业务日志存储方法的流程图。
图4为第四实施例提供的业务日志存储方法的流程图。
图5为第五实施例提供的业务日志存储装置的结构框图。
图6为第六实施例提供的业务日志存储装置的结构框图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
本发明第一实施例提供一种业务日志存储系统。上述的业务是一个互联网应用程序或者多个互联网应用程序的集合。而互联网应用程序是指具有客户端-服务器架构的应用程序。上述的客户端可以是独立的应用程序,也可以是基于浏览器的网页应用程序。
参阅图1,本实施例提供的业务日志存储系统包括以下服务器:主日志缓存服务器101、备日志缓存服务器102、日志存储服务器103、以及日志路由服务器104。
业务服务器(图未示)在提供网络服务的过程中会产生日志。日志一般可保存在文件中,文件中可包括多条记录,每条记录内可包括以下字段:业务ID、主日志缓存服务器ID、日志产生时间以及日志数据。业务服务器的产生日志后会需要将其发送给主日志缓存服务器101进行缓存。
主日志缓存服务器101实时接收业务服务器通过网络发送过来的业务日志文件,然后缓存到本地。缓存时间通常为1天。1天过去后,将业务日志文件发送到日志存储服务器103永久保存。由于单机处理性能有限,为了满足海量日志入库的性能要求,通常会在系统中部署多个主日志缓存服务器101。
备日志缓存服务器102用于在主日志缓存服务器101服务不可用时,临时接管不可用的主日志缓存服务器101的日志缓存入库工作,待该主日志缓存服务器101工作正常后,再将已缓存的业务日志文件重新写入该主日志缓存服务器101。
日志存储服务器103用于接收主日志缓存服务器101发送过来的已缓存的业务日志文件,并永久保存该业务日志文件。
日志路由服务器104用于通过心跳管理主日志缓存服务器101以及备日志缓存服务器102的存活状态。
在一个实例中,日志路由服务器104通过心跳信号获取各主/备日志缓存服务器的存活状态。即,每间隔一段时间(一个心跳周期)各主/备日志缓存服务器可向日志路由服务器104发送一个心跳信号。此心跳信号可以不包括任何有意义的数据,可以包括预先约定的任何数据,还可以包括其他任意数据。
具体地,在一个心跳周期内,若接收到主日志缓存服务器101或者备日志缓存服务器102的心跳信号,则标记对应的主日志缓存服务器101或者备日志缓存服务器102的存活状态为可用;若未接收到某个主日志缓存服务器101或者备日志缓存服务器102的心跳信号,则标记对应的主日志缓存服务器101或者备日志缓存服务器102的存活状态为不可用。
当然,本实施并不限于采用上述心跳信号的方式。例如,还可以是由日志路由服务器104每间隔一段时间主动查询各主/备日志缓存服务器的状态。或者采用心跳及主动查询的结合等等,本领域普通技术人员可以结合具体情形灵活采用合适的方案。
业务服务器根据预定的规则决定要将日志文件发送至哪一个主日志缓存服务器101,此时业务服务器可向日志路由服务器104查询该主日志缓存服务器101的存活状态。
相应地,日志路由服务器104接收业务服务器的查询请求。若查询的主日志缓存服务器101的存活状态为可用,则可返回表示服务器可用的信息;否则,可以从可用的备日志缓存服务器102中获取一个,并将其标识返回给业务服务器。上述的可用的备日志缓存服务器102是指处于可用且空闲状态的备日志缓存服务器102。
业务服务器若接收到表示主日志缓存服务器101可用的信号,则可直接将日志发送给主日志缓存服务器101进行存储。若接收到返回的备日志缓存服务器102的标识,则可将日志发送给该备日志缓存服务器102。
可以理解,主日志缓存服务器101以及备日志缓存服务器102的存活状态会发生变化,当一个主日志缓存服务器101的存活状态从不可用转为可用之后,日志路由服务器104可以将其存活状态通知对应的备日志缓存服务器102,或者通知所有备日志缓存服务器102。
相应地,备日志缓存服务器102将缓存的日志文件发送一份至主日志缓存服务器101。具体地,在备日志缓存服务器102中所存储的日志文件内,每条记录中可包括以下信息:业务ID、主日志缓存服务器ID、日志产生时间以及日志数据。因此,对于每条记录,备日志缓存服务器102均可了解其对应于哪个主日志缓存服务器101。在该主日志缓存服务器101恢复存活状态时,即可将某段时间内接收的日志发送一份至该主日志缓存服务器101。从而可以保证主日志缓存服务器101内的日志是完整的。
根据本实施例的日志存储系统,无须再针对每个主日志缓存服务器101设置一个备日志缓存服务器102,所有的备日志缓存服务器102的数量只需要同一时间主日志缓存服务器101可能宕机的最大数目。以100台主日志缓存服务器101为例,根据统计记录,这个数目差不多在3台左右。因此,采用本实施例的技术方案,相比于传统的备份机制可以显著减少备日志缓存服务器的数量,降低运营成本。
本发明第二实施例提供一种业务日志存储方法,参阅图2,上述方法包括:
步骤201、获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
参阅图1,日志路由服务器104获取日志存储系统中的各主日志缓存服务器101和各备日志缓存服务器102的存活状态,存活状态包括可用状态和不可用状态。
在一个实例中,日志路由服务器104通过心跳信号获取各主/备日志缓存服务器的存活状态。即,每间隔一段时间(一个心跳周期)各主/备日志缓存服务器可向日志路由服务器104发送一个心跳信号。此心跳信号可以不包括任何有意义的数据,可以包括预先约定的任何数据,还可以包括其他任意数据。在一个心跳周期内,若日志路由服务器104接收到一个主/备日志缓存服务器的心跳信号,则标记对应的主/备日志缓存服务器的存活状态为可用;否则标记对应的主/备日志缓存服务器的存活状态为可用。
当然,本实施并不限于采用上述心跳信号的方式。例如,还可以是由日志路由服务器104每间隔一段时间主动查询各主/备日志缓存服务器的状态。或者采用心跳及主动查询的结合等等,本领域普通技术人员可以结合具体情形灵活采用合适的方案。
步骤202、接收业务服务器的查询请求,该查询请求用于请求查询目标主日志缓存服务器的存活状态;
日志路由服务器104接收业务服务器的查询请求,该查询请求用于请求查询目标主日志缓存服务器的存活状态。在该业务服务器上保存有业务日志文件,可通过事先约定由该业务服务器将某项特定的业务日志文件发送给特定的主日志缓存服务器,即,发送业务日志文件的目标主日志缓存服务器101在系统中是预先设置的,或通过预置规则分配的。
步骤203、若该存活状态为可用状态,则将该目标主日志缓存服务器的存活状态发送给该业务服务器,使得该业务服务器将业务日志文件发送给该目标主日志缓存服务器;
若日志路由服务器104查询到该目标主日志缓存服务器的存活状态为可用状态,则将该目标主日志缓存服务器101的存活状态发送给该业务服务器,通知该业务服务器该目标主日志缓存服务器目前正常运行,可将业务日志文件发送给该目标主日志缓存服务器。进一步地,经过预置时长后,例如24小时后,该目标主日志缓存服务器101将该业务日志文件存入日志存储服务器103以永久保存。
步骤204、若该存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器,并将该备日志缓存服务器的标识发送至该业务服务器,使得该业务服务器将业务日志文件发送给该目标备日志缓存服务器。
若日志路由服务器104查询到该目标主日志缓存服务器101的存活状态为不可用状态,则查询备日志缓存服务器的存活状态,在存活状态为可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器。并将该备日志缓存服务器的身份标识发送至该业务服务器,使得该业务服务器将业务日志文件发送给该目标备日志缓存服务器进行缓存。
一个备日志缓存服务器102同一时刻可以只为一个主日志缓存服务器101服务,此时,当将一个备日志缓存服务器102分配给一个主日志缓存服务器101后,可标记该目标备日志缓存服务器102为占用状态,避免目标备日志缓存服务器102同时缓存不同的业务日志文件。
当然,一个备日志缓存服务器102同一时刻也可以为多个主日志缓存服务器101服务,此时,无须标记该目标备日志缓存服务器102为占用状态。但保证备日志缓存服务器102的压力在可控范围内,可以记录其负担的主日志缓存服务器101的数量,从而可以保证在多个备日志缓存服务器102之间均衡负载。
根据本实施例的日志存储系统,无须再针对每个主日志缓存服务器101设置一个备日志缓存服务器102,所有的备日志缓存服务器102的数量只需要同一时间主日志缓存服务器101可能宕机的最大数目。以100台主日志缓存服务器101为例,根据统计记录,这个数目差不多在3台左右。因此,采用本实施例的技术方案,相比于传统的备份机制可以显著减少备日志缓存服务器的数量,降低运营成本。
第三实施例提供一种业务日志存储方法,参阅图3,其与图2的方法相似,其不同之处在于,还包括:
步骤S301,当检测到所述目标主日志缓存服务器的存活状态恢复为可用状态时,则通知所述备日志缓存服务器将缓存的所述业务日志文件发送给所述目标主日志缓存服务器。
如上所述,日志路由服务器104可以通过心跳信号或者主动查询到某个主日志缓存服务器101从不可用状态转为可用状态时,可将其状态通知备日志缓存服务器102。相应地,备日志缓存服务器102可将其备份的日志发送给对应的主日志缓存服务器101。
进一步地,若备日志缓存服务器102只为一个主日志缓存服务器101服务,则此时说明备日志缓存服务器102又再处于空闲状态,可以标记其为可用状态。
根据本实施例的日志存储方法,除了具有第一实施的方法所有的优点,还在主日志缓存服务器101恢复为可用状态后,恢复正常的日志缓存机制,可提升日志缓存的处理效率。
第四实施例提供一种业务日志存储方法,参阅图4,其包括以下步骤:
步骤401、获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
日志路由服务器104获取日志存储系统中的各主日志缓存服务器101和各备日志缓存服务器102的存活状态,存活状态包括可用状态和不可用状态。
在一个实例中,日志路由服务器104通过心跳信号获取各主/备日志缓存服务器的存活状态。即,每间隔一段时间(一个心跳周期)各主/备日志缓存服务器可向日志路由服务器104发送一个心跳信号。此心跳信号可以不包括任何有意义的数据,可以包括预先约定的任何数据,还可以包括其他任意数据。在一个心跳周期内,若日志路由服务器104接收到一个主/备日志缓存服务器的心跳信号,则标记对应的主/备日志缓存服务器的存活状态为可用;否则标记对应的主/备日志缓存服务器的存活状态为可用。
当然,本实施并不限于采用上述心跳信号的方式。例如,还可以是由日志路由服务器104每间隔一段时间主动查询各主/备日志缓存服务器的状态。或者采用心跳及主动查询的结合等等,本领域普通技术人员可以结合具体情形灵活采用合适的方案。
步骤402、接收业务服务器的路由查询请求,该路由查询请求内包含业务标识;
日志路由服务器104接收业务服务器确定日志缓存服务器的请求,该路由查询请求内包含业务标识。
步骤403、根据预定的路由规则获取与该业务标识对应的主日志缓存服务器;
日志路由服务器104根据预定的路由规则,获取与该业务标识对应的主日志缓存服务器101。
步骤404、若该对应的主日志缓存服务器的存活状态为可用,则将该对应的主日志缓存服务器作为目标日志缓存服务器,否则从可用的备日志缓存服务器内获取一个备日志缓存服务器作为该目标日志缓存服务器;
若该对应的主日志缓存服务器101的存活状态为可用,日志路由服务器则将该对应的主日志缓存服务器101作为目标日志缓存服务器,若该对应的主日志缓存服务器101的存活状态为不可用,日志路由服务器104则从可用的备日志缓存服务器102内获取一个备日志缓存服务器102作为该目标日志缓存服务器。
可以理解,在为主日志缓存服务器101选取一个可用的备日志缓存服务器102后。若按照设定,备日志缓存服务器102同一时刻只为一个主日志缓存服务器101服务,则在将一个备日志缓存服务器102作为目标日志缓存服务器返回给业务服务器后,可标记其为占用状态。进一步地,还可以将主日志缓存服务器101与备日志缓存服务器102的对应关系存储在一个列表内。对应于每个对应关系,还可记录开始时间以及结束时间。
步骤405、将该目标日志缓存服务器的标识发送至该业务服务器,使得该业务服务器将业务日志文件发送给该目标日志缓存服务器。
日志路由服务器104将该目标日志缓存服务器的标识发送至该业务服务器,使得该业务服务器根据该目标日志缓存服务器的标识,将业务日志文件发送给该目标日志缓存服务器。进一步地,经过预置时长后,例如24小时后,该目标主日志缓存服务器将该业务日志文件存入日志存储服务器以永久保存。
在主日志缓存服务器101恢复为可用状态后,日志路由服务器104还可以通知备日志缓存服务器102,命名备日志缓存服务器102将缓存的日志发送给对应的主日志缓存服务器101。
在一个实例中,备日志缓存服务器102中存储的日志内,每条记录包括以下字段:业务ID、主日志缓存服务器ID、日志产生时间以及日志数据。因此,对于每条记录,备日志缓存服务器102均可了解其对应于哪个主日志缓存服务器101。在该主日志缓存服务器101恢复存活状态时,即可将某段时间内接收的日志发送一份至该主日志缓存服务器101。从而可以保证主日志缓存服务器101内的日志是完整的。
在另一个实例中,备日志缓存服务器102中存储的日志内,每条记录可不包括主日志缓存服务器ID。此时,日志路由服务器104可以根据上述的映射列表直接指示备日志缓存服务器102将某个时间段内的日志发送至哪个主日志缓存服务器101中。
本发明实施例中,日志路由服务器根据各主日志缓存服务器和各备日志缓存服务器的存活状态,为业务服务器确定一个可用的主日志缓存服务器或备日志缓存服务器作为其发送业务日志文件的目标日志缓存服务器,从而相对于传统的为一个主日志缓存服务器配置一个备日志缓存服务器的系统结构,所有的备日志缓存服务器102的数量只需要同一时间主日志缓存服务器101可能宕机的最大数目,节省了机器成本。
第五实施例提供一种业务日志存储装置,其可用于图1所示的日志路由服务器中。参阅图5,本实施例的装置包括:状态获取单元51、接收单元52、第一发送单元53、以及第二发送单元。
状态获取单元51用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态。在一个实例中,状态获取单元51用于在一个统计周期内,若接收到各主日志缓存服务器和各备日志缓存服务器的心跳信号,则标记与所述心跳信号对应的主日志缓存服务器或备日志缓存服务器的存活状态为可用状态;否则标记对应的主日志缓存服务器或备日志缓存服务器的存活状态为不可用状态。
接收单元52用于接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态;
第一发送单元53用于若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器;
第二发送单元54用于若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器;将所述备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器。
关于本实施例的装置的其他细节,还可参阅图2以及相关说明。
根据本实施例的日志存储系统,无须再针对每个主日志缓存服务器101设置一个备日志缓存服务器102,所有的备日志缓存服务器102的数量只需要同一时间主日志缓存服务器101可能宕机的最大数目。以100台主日志缓存服务器101为例,根据统计记录,这个数目差不多在3台左右。因此,采用本实施例的技术方案,相比于传统的备份机制可以显著减少备日志缓存服务器的数量,降低运营成本。
第六实施例提供一种业务日志存储装置,其可用于图1所示的日志路由服务器中。参阅图6,本实施例的装置与图5所示的装置相似,其不同之处在于,还包括:通知单元61以及标记单元62。
其中,通知单元61用于当检测到所述目标主日志缓存服务器的存活状态恢复为可用状态时,则通知所述备日志缓存服务器将缓存的所述业务日志文件发送给所述目标主日志缓存服务器。
标记单元62用于在将所述备日志缓存服务器的标识发送至所述业务服务器后还标记对应的备日志缓存服务器为占用状态;以及在所述备日志缓存服务器将所述业务日志文件发送给所述目标主日志缓存服务器后标记所述目标备日志缓存服务器为可用状态。
如上所述,日志路由服务器104可以通过心跳信号或者主动查询到某个主日志缓存服务器101从不可用状态转为可用状态时,可将其状态通知备日志缓存服务器102。相应地,备日志缓存服务器102可将其备份的日志发送给对应的主日志缓存服务器101。
进一步地,若备日志缓存服务器102只为一个主日志缓存服务器101服务,则此时说明备日志缓存服务器102又再处于空闲状态,可以标记其为可用状态。
根据本实施例的日志存储装置,除了具有第五实施的装置所有的优点,还在主日志缓存服务器101恢复为可用状态后,恢复正常的日志缓存机制,可提升日志缓存的处理效率。
此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的业务日志存储方法、装置及系统。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (11)
1.一种业务日志存储方法,用于日志路由服务器中,其特征在于,包括:
获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态;
若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器;
若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器,并将所述目标备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器;
其中,所述备日志缓存服务器的数量少于所述主日志缓存服务器的数量。
2.根据权利要求1所述的方法,其特征在于,所述获取各主日志缓存服务器和各备日志缓存服务器的存活状态包括:
在一个统计周期内,若接收到各主日志缓存服务器和各备日志缓存服务器的心跳信号,则标记与所述心跳信号对应的主日志缓存服务器或备日志缓存服务器的存活状态为可用状态;否则标记对应的主日志缓存服务器或备日志缓存服务器的存活状态为不可用状态。
3.根据权利要求1所述的方法,其特征在于,还包括:当检测到所述目标主日志缓存服务器的存活状态恢复为可用状态时,则通知所述目标备日志缓存服务器将缓存的所述业务日志文件发送给所述目标主日志缓存服务器。
4.根据权利要求3所述的方法,其特征在于,还包括:在将所述目标备日志缓存服务器的标识发送至所述业务服务器后还标记所述目标备日志缓存服务器为占用状态;以及在所述目标备日志缓存服务器将所述业务日志文件发送给所述目标主日志缓存服务器后标记所述目标备日志缓存服务器为可用状态。
5.一种业务日志存储方法,用于日志路由服务器中,其特征在于,包括:
获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收应用服务器的路由查询请求,所述路由查询请求内包含业务标识;
根据预定的路由规则获取与所述业务标识对应的主日志缓存服务器;
若所述对应的主日志缓存服务器的存活状态为可用则将所述对应的主日志缓存服务器作为目标日志缓存服务器;否则从可用的备日志缓存服务器内获取一个备日志缓存服务器作为所述目标日志缓存服务器;
将所述目标日志缓存服务器的标识发送至所述应用服务器,使得所述应用服务器将业务日志文件发送给所述目标日志缓存服务器;
其中,所述备日志缓存服务器的数量少于所述主日志缓存服务器的数量。
6.一种业务日志存储装置,其特征在于,包括:
状态获取单元,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态;
接收单元,用于接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态;
第一发送单元,用于若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器;
第二发送单元,用于若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器;将所述目标备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器;
其中,所述备日志缓存服务器的数量少于所述主日志缓存服务器的数量。
7.根据权利要求6所述的装置,其特征在于,所述状态获取单元用于:在一个统计周期内,若接收到各主日志缓存服务器和各备日志缓存服务器的心跳信号,则标记与所述心跳信号对应的主日志缓存服务器或备日志缓存服务器的存活状态为可用状态;否则标记对应的主日志缓存服务器或备日志缓存服务器的存活状态为不可用状态。
8.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
通知单元,用于当检测到所述目标主日志缓存服务器的存活状态恢复为可用状态时,则通知所述目标备日志缓存服务器将缓存的所述业务日志文件发送给所述目标主日志缓存服务器。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
标记单元,用于在将所述目标备日志缓存服务器的标识发送至所述业务服务器后还标记所述目标备日志缓存服务器为占用状态;以及在所述目标备日志缓存服务器将所述业务日志文件发送给所述目标主日志缓存服务器后标记所述目标备日志缓存服务器为可用状态。
10.一种业务日志存储系统,其特征在于,包括:
日志路由服务器、主日志缓存服务器以及备日志缓存服务器;
所述日志路由服务器,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态,接收业务服务器的查询请求,所述查询请求用于请求查询目标主日志缓存服务器的存活状态,若所述存活状态为可用状态,则将所述目标主日志缓存服务器的存活状态发送给所述业务服务器,使得所述业务服务器将业务日志发送给所述目标主日志缓存服务器,若所述存活状态为不可用状态,则在可用的备日志缓存服务器中确定缓存业务日志文件的目标备日志缓存服务器,标记所述目标备日志缓存服务器为占用状态,并将所述目标备日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标备日志缓存服务器;
所述主日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;
所述备日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;
其中,所述备日志缓存服务器的数量少于所述主日志缓存服务器的数量。
11.一种业务日志存储系统,其特征在于,包括:
日志路由服务器、主日志缓存服务器以及备日志缓存服务器;
所述日志路由服务器,用于获取各主日志缓存服务器和各备日志缓存服务器的存活状态,接收业务服务器的路由查询请求,所述路由查询请求内包含业务标识,根据预定的路由规则获取与所述业务标识对应的主日志缓存服务器,若所述对应的主日志缓存服务器的存活状态为可用则将所述对应的主日志缓存服务器作为目标日志缓存服务器;否则从可用的备日志缓存服务器内获取一个备日志缓存服务器作为所述目标日志缓存服务器,将所述目标日志缓存服务器的标识发送至所述业务服务器,使得所述业务服务器将业务日志文件发送给所述目标日志缓存服务器;
所述主日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;
所述备日志缓存服务器,用于接收并缓存所述业务服务器发送的所述业务日志文件;
其中,所述备日志缓存服务器的数量少于所述主日志缓存服务器的数量。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201310530737.XA CN104601354B (zh) | 2013-10-31 | 2013-10-31 | 一种业务日志存储方法、装置及系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201310530737.XA CN104601354B (zh) | 2013-10-31 | 2013-10-31 | 一种业务日志存储方法、装置及系统 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN104601354A CN104601354A (zh) | 2015-05-06 |
| CN104601354B true CN104601354B (zh) | 2019-05-17 |
Family
ID=53126880
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201310530737.XA Active CN104601354B (zh) | 2013-10-31 | 2013-10-31 | 一种业务日志存储方法、装置及系统 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN104601354B (zh) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106897288B (zh) * | 2015-12-18 | 2021-01-08 | 阿里巴巴集团控股有限公司 | 数据库的服务提供方法和系统 |
| CN106776130B (zh) * | 2016-11-30 | 2020-07-28 | 华为技术有限公司 | 一种日志恢复方法、存储装置和存储节点 |
| CN107562796A (zh) * | 2017-08-02 | 2018-01-09 | 上海斐讯数据通信技术有限公司 | 一种海量移动终端在线量统计方法和装置 |
| CN108197015A (zh) * | 2017-12-29 | 2018-06-22 | 天脉聚源(北京)科技有限公司 | 以消息的方式写入日志数据的方法及装置 |
| CN110990193A (zh) * | 2019-11-13 | 2020-04-10 | 上海易点时空网络有限公司 | 日志备份的方法、装置及系统 |
| CN116257497A (zh) * | 2021-12-10 | 2023-06-13 | 青岛海尔科技有限公司 | 用于缓存日志的方法及装置、服务器、存储介质 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101110609A (zh) * | 2007-08-23 | 2008-01-23 | 华为技术有限公司 | 主、备用模块实现通信的方法和系统 |
| CN101876924A (zh) * | 2009-04-30 | 2010-11-03 | 升东网络科技发展(上海)有限公司 | 数据库故障自动检测及转移方法 |
| CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8126848B2 (en) * | 2006-12-07 | 2012-02-28 | Robert Edward Wagner | Automated method for identifying and repairing logical data discrepancies between database replicas in a database cluster |
-
2013
- 2013-10-31 CN CN201310530737.XA patent/CN104601354B/zh active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101110609A (zh) * | 2007-08-23 | 2008-01-23 | 华为技术有限公司 | 主、备用模块实现通信的方法和系统 |
| CN101876924A (zh) * | 2009-04-30 | 2010-11-03 | 升东网络科技发展(上海)有限公司 | 数据库故障自动检测及转移方法 |
| CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN104601354A (zh) | 2015-05-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN104601354B (zh) | 一种业务日志存储方法、装置及系统 | |
| CA3168289C (en) | METHOD AND SYSTEM FOR MONITORING MICRO-SERVICES | |
| JP6044539B2 (ja) | 分散ストレージシステムおよび方法 | |
| US8949420B2 (en) | Content pre-fetching and preparation | |
| CN106161523B (zh) | 一种数据处理方法和设备 | |
| US20090198787A1 (en) | Data streaming to multiple browser windows | |
| CN103577500B (zh) | 分布式文件系统进行数据处理的方法及该分布式文件系统 | |
| CN106933547B (zh) | 全局信息获取及处理的方法、装置和更新系统 | |
| CN109710614A (zh) | 一种实时数据存储与查询的方法及装置 | |
| KR101545626B1 (ko) | Dds-db 연동 시스템 | |
| CN109542595B (zh) | 一种数据采集方法、装置和系统 | |
| US9195611B2 (en) | Efficiently updating and deleting data in a data storage system | |
| CN104865953B (zh) | 一种车辆数据处理方法和装置 | |
| KR102166098B1 (ko) | 클라이언트에게 현재 데이터 및 과거 데이터를 제공하기 위한 서버 시스템 | |
| CN113886494B (zh) | 即时通讯的消息存储方法、装置、设备及计算机可读介质 | |
| CN108322358B (zh) | 异地多活的分布式消息发送、处理、消费方法及装置 | |
| JP2020500345A5 (zh) | ||
| CN103870570A (zh) | 一种基于远程日志备份的HBase数据可用性及持久性的方法 | |
| US9727375B1 (en) | Systems and methods for run time migration | |
| CN108809855A (zh) | 消息管理方法、装置及电子设备 | |
| CN110740155B (zh) | 分布式系统中的请求处理方法及装置 | |
| CN105610947A (zh) | 一种高可用分布式队列服务实现方法、装置和系统 | |
| CN106569936A (zh) | 一种实时采集滚动日志的方法及系统 | |
| CN113407356B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
| CN113220473B (zh) | 数据存储方法及系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |