CN104683459A - 一种发送业务数据的方法和存储系统 - Google Patents
一种发送业务数据的方法和存储系统 Download PDFInfo
- Publication number
- CN104683459A CN104683459A CN201510080900.6A CN201510080900A CN104683459A CN 104683459 A CN104683459 A CN 104683459A CN 201510080900 A CN201510080900 A CN 201510080900A CN 104683459 A CN104683459 A CN 104683459A
- Authority
- CN
- China
- Prior art keywords
- server
- data
- address information
- buffer memory
- target data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种发送业务数据的方法和存储系统,属于互联网技术领域。所述方法包括:接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端。采用本发明,可以降低第一服务器中用户需要的业务数据丢失的可能性。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种发送业务数据的方法和存储系统。
背景技术
随着互联网技术的发展,互联网的应用越来越广泛,功能越来越强大,用户可以通过互联网,向某服务器发送数据请求,以获取自己所需的业务数据。
在实际中,业务提供商通常会设置多台服务器,其中,若干台服务器可以组成一个服务器组,为某网络业务提供业务数据。该网络业务的文件(如一个视频文件)可以分成多个数据块,分别存储到该服务器组的各服务器中,当用户向某服务器发送该视频的数据请求时,该服务器会从该服务器组的各服务器中读取该视频的业务数据,将读取到的业务数据存储到该服务器的缓存空间中,并将缓存空间中的业务数据发送给用户的终端。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
用户安装该业务提供商开发的应用程序后,该应用程序的管理系统通常会将该用户分配到一个指定的服务器上,该用户请求业务数据时,会由该服务器提供业务数据。服务器在运行的过程中,经常会出现某个服务器对应的用户中,大量用户同时请求业务数据的情况,该服务器的缓存空间中会存储大量的业务数据,这时,缓存空间会快速的按存储时间由先到后的顺序自动清除其存储的业务数据,因此,可能会造成缓存中用户需要的业务数据丢失。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种发送业务数据的方法和存储系统。所述技术方案如下:
第一方面,提供了一种发送业务数据的方法,所述方法应用于存储系统中,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存,所述方法由第一服务器执行,包括:
接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;
获取所述第一服务器的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;
确定所述第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;
接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;
根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;
向所述第二服务器请求所述第二目标数据,并发送给所述终端。
结合第一方面,在该第一方面的第一种可能实现方式中,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
结合第一方面的第一种可能实现方式,在该第一方面的第二种可能实现方式中,所述根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,包括:
确定所述第一服务器中未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
结合第一方面的第一种可能实现方式,在该第一方面的第三种可能实现方式中,还包括:
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
结合第一方面,在该第一方面的第四种可能实现方式中,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
第二方面,一种存储系统,其特征在于,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存;
第一服务器,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;获取本地的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;确定本地的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;向所述第二服务器请求所述第二目标数据,并发送给所述终端;
所述第二服务器,用于根据所述第二目标数据的地址信息进行数据预读;还用于向所述第一服务器发送所述第一服务器请求的第二目标数据。
结合第二方面,在该第二方面的第一种可能实现方式中,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
结合第二方面的第一种可能实现方式,在该第二方面的第二种可能实现方式中,所述第一服务器,用于确定本地未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
结合第二方面的第一种可能实现方式,在该第二方面的第三种可能实现方式中,所述第一服务器还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
结合第二方面,在该第二方面的第四种可能实现方式中,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种发送业务数据的方法流程图;
图2是本发明实施例提供的一种系统框架图;
图3是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种发送业务数据的方法,该方法应用于存储系统中,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存,该方法由第一服务器执行。
如图2所示,为本发明实施例提供的一种可选的系统框架图,其中包括服务器和终端,该服务器可以是用于发送业务数据的服务器,其中,终端可以是请求业务数据的终端,第一服务器可以是终端安装的应用程序中预先存储的服务器标识对应的服务器。该存储系统中,网络业务的文件(如一个视频文件)可以分成多个数据块,分别存储到该服务器组的各服务器中,当终端请求某个文件中的业务数据时,可以由一个服务器向从存储系统的各服务器中读取该文件的数据块,将读取到的数据块存储到本地的缓存空间中,在读取到终端此次请求对应的全部业务数据后,将这些业务数据发送给终端。
如图1所示,该方法的处理流程可以包括如下的步骤:
步骤101,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,第一目标数据的地址信息包括第一目标数据的起始地址和长度。
步骤102,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
步骤103,获取第一服务器的缓存使用频率,其中缓存使用频率是指预设时间内从缓存读取的数据的大小。
步骤104,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,预读数据请求包括第二目标数据的地址信息,第二服务器的缓存使用频率小于第一阈值。
步骤105,接收终端发送的第二读数据请求,第二读数据请求包括第二目标数据的地址信息。
步骤106,根据第二目标数据的地址信息确定第二服务器的缓存中保存有第二目标数据。
步骤107,向第二服务器请求第二目标数据,并发送给终端。
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
实施例二
本发明实施例提供了一种发送业务数据的方法,该方法应用于存储系统中,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存,用于存储并向终端提供业务数据,该方法可以由第一服务器执行。
下面将结合具体实施方式,对图1所示的处理流程进行详细的说明,内容可以如下:
步骤101,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,第一目标数据的地址信息包括第一目标数据的起始地址和长度。
在实施中,用户可以在终端安装用于获取业务数据的应用程序,当用户需要获取某文件(如某视频文件)的数据时,可以在终端打开该应用程序,然后点击该视频文件对应的选项,终端则会检测到对应该视频文件的选取指令,向服务器发送该视频文件的数据请求。第一服务器则会接收到该数据请求,然后读取该数据请求对应的业务数据,将这些业务数据存储到本地缓存中,以便将业务数据发送给终端。
第一服务器可以在接收到终端发送的数据请求(即第一读数据请求)时,可以对第一读数据请求进行解析,获取其中的第一目标数据的地址信息,第一目标数据的地址信息可以包括第一目标数据的起始地址和长度等信息。
步骤102,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
在实施中,第一服务器接收到第一读数据请求后,可以获取第一目标数据的起始地址和长度等信息,进而可以确定第二目标数据的地址信息,如第二目标数据的起始地址。第一服务器中可以预先设置长度间隔,则第一服务器可以根据第一目标数据的起始地址和长度,确定第一目标数据的末尾地址,进而可以确定与第一目标数据的末尾地址间隔预先设置长度间隔的地址,然后将该地址作为第二目标数据的起始地址。
可选的,第二目标数据的起始地址与第一目标数据的末尾地址连续,第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
可选的,第一服务器可以先查询本地缓存中是否存储接收到的数据请求对应的业务数据所属的文件,相应的,步骤102的处理过程可以如下:确定第一服务器中未存储有第一读数据请求对应的第一目标数据所属的文件时,则第一服务器根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
在实施中,第一服务器接收到数据请求(即第一读数据请求)后,可以对该数据请求进行解析,获取其中的文件标识,然后可以在本地缓存中查询是否存储有该文件标识对应的文件,如果本地缓存中未存储有该文件标识对应的文件,则第一服务器可以第一服务器根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。另外,如果第一服务器查询到本地缓存有该文件标识对应的文件,则可以在已存储的文件中,获取该数据请求对应的业务数据,将获取到的业务数据发送给终端。
可选的,第一服务器还可以获取第二目标数据的预读长度,相应的处理过程可以如下:根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度。
在实施中,第一服务器接收到第一读数据请求后,可以确定预读范围信息,预读范围信息可以根据第一目标数据的地址信息和预设的预读算法确定。第一服务器可以根据第一目标数据的起始地址和长度,确定第一目标数据的末尾地址,进而可以根据预先设置的预读算法,确定第二目标数据的预读长度。例如,第一目标数据的起始地址为文件的1M处,长度为1M,则可以确定第二目标数据的起始地址为文件的2M处,进而可以根据预先设置的预读算法,确定第二目标数据的预读长度,即1M。
步骤103,获取第一服务器的缓存使用频率,其中缓存使用频率是指预设时间内从缓存读取的数据的大小。
在实施中,当第一服务器向多个终端提供业务数据时,第一服务器将持续向本地缓存中存储业务数据,第一服务器可以确定预设时长内存入本地缓存中的业务数据,并确定存储这些业务数据所使用的存储空间在本地缓存中所占的比例,即缓存使用频率,缓存使用频率可以反映出服务器当前的工作状态,服务器的缓存使用频率越高,则说明预设时长内向该服务器请求的业务数据的数据量越大,该服务器越忙碌。例如,第一服务器在3秒内存储业务数据所使用的存储空间在本地缓存中所占的比例为50%,则缓存使用频率为50%。第一服务器可以在达到预设周期时,获取本地的缓存使用频率,也可以在满足预设的触发条件时,获取本地的缓存使用频率。
步骤104,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,预读数据请求包括第二目标数据的地址信息,第二服务器的缓存使用频率小于第一阈值。
在实施中,可以将服务器组中的某服务器设置为管理服务器,管理服务器可以用于汇总各服务器的缓存使用频率。第一服务器所属的服务器组中的各服务器都可以获取各自的缓存使用频率,然后可以将各自的缓存使用频率发送给管理服务器,管理服务器可以将各服务器的标识与各服务器的缓存使用频率进行对应的存储,建立各服务器的缓存使用频率信息表,如下表所示:
缓存使用频率信息表
服务器标识 | 缓存使用频率 |
CA1 | 80 |
CA2 | 30 |
CA3 | 50 |
CA4 | 65 |
管理服务器可以将缓存使用频率信息表发送给服务器组中的各服务器,各服务器则会接收到该缓存使用频率信息表,从而获知其他服务器的缓存使用频率。
第一服务器获取本地的缓存使用频率后,可以判断获取本地的缓存使用频率是否大于预设的第一阈值,如果本地的缓存使用频率大于预设的第一阈值,则第一服务器可以在存储系统中,随机选取一个服务器(即第二服务器),向第二服务器发送预读数据请求,该预读数据请求,包括第二目标数据的地址信息,第二服务器的缓存使用频率小于第一阈值。例如,第一阈值为60,第一服务器(CA1)可以确定本地的缓存使用频率大于60,然后可以确定服务器CA2和服务器CA3的缓存使用频率小于60,进而可以向服务器CA2发送预读数据请求。
存储系统中,网络业务的文件(如一个视频文件)可以分成多个数据块,分别存储到该存储系统中的各服务器中。第二服务器接收到预读数据请求后,可以根据预读数据请求中的第二目标数据的地址信息,从存储系统的各服务器中读取第二目标数据对应的数据块,第二服务器可以根据读取到的数据块组成第二目标数据的数据分条,并将该数据分条存储到本地的缓存空间中,以便进行后续处理。
可选的,对于上述获取第二目标数据的预读长度的情况,相应的,第一服务器发送的预读数据请求还可以包括第二目标数据的预读长度。
在实施中,第一服务器可以向第二服务器发送预读请求,该预读请求中可以携带有第二目标数据的预读长度。第二服务器则会接收到该预读请求,然后根据预读长度、预先设置的预读算法和第二服务器的地址信息,确定第二目标数据的对应的预读范围,进而可以读取该预读范围内的业务数据。例如,第二服务器的地址信息中,起始地址为文件的1M处,预读长度为3M,则第二服务器可以读取文件1M处之后的3M业务数据。
可选的,第二服务器为存储系统中缓存使用频率最小的服务器。
在实施中,第一服务器确定缓存使用频率小于预设的第一阈值的服务器后,可以确定这些服务器中缓存使用频率最小的服务器(即第二服务器)。例如,第一阈值为60,则第一服务器(CA1)可以确定本地的缓存使用频率大于60,然后可以确定服务器CA2和服务器CA3的缓存使用频率小于60,并确定服务器CA2的缓存使用频率最小。
步骤105,接收终端发送的第二读数据请求,第二读数据请求包括第二目标数据的地址信息。
在实施中,第一服务器可以记录第二服务器的预读范围,当第一服务器接收到终点发送的第二读数据请求时,可以对第二读数据请求进行解析,获取其中的第二目标数据的地址信息,进而确定第二读数据请求对应的业务数据的范围。
步骤106,根据第二目标数据的地址信息确定第二服务器的缓存中保存有第二目标数据。
在实施中,服务器组中存储的各文件都在服务器组中有对应的服务器,用于记录第一个读取该文件的服务器的标识,并可以向读取该文件的服务器发送用于保护该文件数据内容的保护标识。
例如,第二服务器是第一个读取文件A的服务器,第二服务器需要先向文件A对应的服务器发送读取申请,文件A对应的服务器则会将文件A的保护标识发送给第二服务器,并将第二服务器记录为第一个读取文件A的服务器,第二服务器从服务器组中的服务器中读取文件A的业务数据后,可以将文件A的业务数据与文件A的保护标识进行对应的存储,这样,第二服务器读取到的文件A的业务数据将不能被修改,从而可以保证已读取的业务数据的安全性。当第一服务器需要读取文件A的业务数据时,第一服务器也需要向文件A对应的服务器发送读取申请,文件A对应的服务器发送则会将文件A的保护标识发送给第一服务器,并通知第一服务器第一个读取文件A的服务器为第二服务器,第一服务器则会向第二服务器发送文件A的读取请求,从而获取文件A的业务数据。
第一服务器接收到第二读数据请求后,可以确定第二读数据请求对应的业务数据所属文件,进而确定该文件对应的服务器,然后向该服务器发送读取申请,进而可以获知读取该文件的服务器为第二服务器,即可以确定第二服务器的缓存中保存有第二目标数据。
步骤107,向第二服务器请求第二目标数据,并发送给终端。
在实施中,第一服务器确定第二服务器的缓存中保存有第二目标数据后,可以向第二服务器发送第二读数据请求,第二服务器则会接收到第二读数据请求,然后将第二读数据请求对应的业务数据(即第二目标数据)发送给第一服务器,第一服务器接收到该业务数据后,可以将该业务数据发送给终端。
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
实施例三
基于相同的技术构思,本发明实施例还提供了一种存储系统,该存储系统包括至少两个服务器,其中,每个服务器均包括缓存;
第一服务器,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;获取本地的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;确定本地的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;向所述第二服务器请求所述第二目标数据,并发送给所述终端;
所述第二服务器,用于根据所述第二目标数据的地址信息进行数据预读。
可选的,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
可选的,所述第一服务器,用于确定本地未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
可选的,所述第一服务器还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
可选的,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
实施例四
基于与上述发送业务数据的方法相同的技术构思,本申请实施例还提供了一种服务器,该服务器的结构示意图请参阅图3。该服务器可以用作上述实施例中的第一服务器。该服务器包括处理器310、收发器320和存储器330,收发器320和存储器330分别与处理器310连接,其中:
存储器330,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;
处理器310,用于根据所述第一目标数据的地址信息以及存储器330中预设的预读算法,获取第二目标数据的地址信息;
处理器310,还用于获取所述第一服务器的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;
处理器310,还用于确定所述第一服务器的缓存使用频率大于预设的第一阈值时,触发收发器320向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;
收发器320,用于接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;
处理器310,还用于根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;
收发器320,还用于向所述第二服务器请求所述第二目标数据,并发送给所述终端。
可选的,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
可选的,处理器310,用于确定所述第一服务器中未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
可选的,处理器310,还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
可选的,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种发送业务数据的方法,其特征在于,所述方法应用于存储系统中,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存,所述方法由第一服务器执行,包括:
接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;
获取所述第一服务器的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;
确定所述第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;
接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;
根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;
向所述第二服务器请求所述第二目标数据,并发送给所述终端。
2.根据权利要求1所述的方法,其特征在于,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,包括:
确定所述第一服务器中未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
4.根据权利要求1所述的方法,其特征在于,还包括:
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
5.根据权利要求1所述的方法,其特征在于,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
6.一种存储系统,其特征在于,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存;
第一服务器,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;获取本地的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;确定本地的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;向所述第二服务器请求所述第二目标数据,并发送给所述终端;
所述第二服务器,用于根据所述第二目标数据的地址信息进行数据预读;还用于向所述第一服务器发送所述第一服务器请求的第二目标数据。
7.根据权利要求6所述的存储系统,其特征在于,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
8.根据权利要求6所述的存储系统,其特征在于,所述第一服务器,用于确定本地未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
9.根据权利要求6所述的存储系统,其特征在于,所述第一服务器,还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
10.根据权利要求6所述的存储系统,其特征在于,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510080900.6A CN104683459B (zh) | 2015-02-13 | 2015-02-13 | 一种发送业务数据的方法和存储系统 |
PCT/CN2015/096466 WO2016127693A1 (zh) | 2015-02-13 | 2015-12-04 | 一种发送业务数据的方法和存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510080900.6A CN104683459B (zh) | 2015-02-13 | 2015-02-13 | 一种发送业务数据的方法和存储系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104683459A true CN104683459A (zh) | 2015-06-03 |
CN104683459B CN104683459B (zh) | 2018-05-11 |
Family
ID=53318026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510080900.6A Active CN104683459B (zh) | 2015-02-13 | 2015-02-13 | 一种发送业务数据的方法和存储系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104683459B (zh) |
WO (1) | WO2016127693A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016127693A1 (zh) * | 2015-02-13 | 2016-08-18 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
CN109739570A (zh) * | 2018-12-24 | 2019-05-10 | 新华三技术有限公司 | 一种数据读取方法、服务器控制设备、服务器及计算机可读存储介质 |
CN109783015A (zh) * | 2018-12-24 | 2019-05-21 | 新华三技术有限公司 | 文件传输方法、装置、服务器及存储介质 |
CN113821460A (zh) * | 2021-08-27 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107918619B (zh) * | 2016-10-10 | 2024-02-02 | 三六零科技集团有限公司 | 广告展示方法和装置 |
CN113691609B (zh) * | 2021-08-20 | 2024-04-09 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113691610B (zh) * | 2021-08-20 | 2024-04-09 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026560A1 (en) * | 1998-10-09 | 2002-02-28 | Kevin Michael Jordan | Load balancing cooperating cache servers by shifting forwarded request |
CN102014150A (zh) * | 2010-09-29 | 2011-04-13 | 厦门市美亚柏科信息股份有限公司 | 一种基于udp分布式小文件存储系统及其数据处理方法 |
CN102075554A (zh) * | 2009-11-19 | 2011-05-25 | 中国移动通信集团北京有限公司 | 一种基于soa架构的服务处理方法及其系统 |
CN102111448A (zh) * | 2011-01-13 | 2011-06-29 | 华为技术有限公司 | 分布式哈希表dht存储系统的数据预取方法、节点和系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6785707B2 (en) * | 2000-11-14 | 2004-08-31 | Bitfone Corp. | Enhanced multimedia mobile content delivery and message system using cache management |
CN101764824B (zh) * | 2010-01-28 | 2012-08-22 | 深圳市龙视传媒有限公司 | 一种分布式缓存控制方法、装置及系统 |
CN103425785A (zh) * | 2013-08-22 | 2013-12-04 | 新浪网技术(中国)有限公司 | 数据存储系统及其用户数据存储、读取方法 |
CN104683459B (zh) * | 2015-02-13 | 2018-05-11 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
-
2015
- 2015-02-13 CN CN201510080900.6A patent/CN104683459B/zh active Active
- 2015-12-04 WO PCT/CN2015/096466 patent/WO2016127693A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026560A1 (en) * | 1998-10-09 | 2002-02-28 | Kevin Michael Jordan | Load balancing cooperating cache servers by shifting forwarded request |
CN102075554A (zh) * | 2009-11-19 | 2011-05-25 | 中国移动通信集团北京有限公司 | 一种基于soa架构的服务处理方法及其系统 |
CN102014150A (zh) * | 2010-09-29 | 2011-04-13 | 厦门市美亚柏科信息股份有限公司 | 一种基于udp分布式小文件存储系统及其数据处理方法 |
CN102111448A (zh) * | 2011-01-13 | 2011-06-29 | 华为技术有限公司 | 分布式哈希表dht存储系统的数据预取方法、节点和系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016127693A1 (zh) * | 2015-02-13 | 2016-08-18 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
CN109739570A (zh) * | 2018-12-24 | 2019-05-10 | 新华三技术有限公司 | 一种数据读取方法、服务器控制设备、服务器及计算机可读存储介质 |
CN109783015A (zh) * | 2018-12-24 | 2019-05-21 | 新华三技术有限公司 | 文件传输方法、装置、服务器及存储介质 |
CN109739570B (zh) * | 2018-12-24 | 2022-04-08 | 新华三技术有限公司 | 一种数据读取方法、服务器控制设备、服务器及计算机可读存储介质 |
CN113821460A (zh) * | 2021-08-27 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
CN113821460B (zh) * | 2021-08-27 | 2024-03-01 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2016127693A1 (zh) | 2016-08-18 |
CN104683459B (zh) | 2018-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104683459A (zh) | 一种发送业务数据的方法和存储系统 | |
CN101645928B (zh) | 内容资源缓存方法、装置及系统 | |
CN102045772B (zh) | 一种数据传输方法及装置 | |
CN107332908B (zh) | 一种数据传输方法及其系统 | |
CN103188574B (zh) | 传输网络视频的方法及系统 | |
CN104331492B (zh) | 一种缓存多实例数据的方法及装置 | |
CN109309631A (zh) | 一种基于通用网络文件系统写入数据的方法及装置 | |
CN110737388A (zh) | 数据预读方法、客户端、服务器以及文件系统 | |
CN109151512A (zh) | Cdn网络中获取内容的方法及装置 | |
CN104516685A (zh) | 网络附加存储系统和用于其中的请求处理的对应方法 | |
CN108347459A (zh) | 一种云端数据快速存储方法及装置 | |
CN110493353A (zh) | 通信方法、装置及服务器 | |
CN104092776A (zh) | 一种信息存取方法和系统 | |
CN107864209B (zh) | 数据写入的方法、装置及服务器 | |
CN105988941B (zh) | 缓存数据处理方法和装置 | |
CN109032787B (zh) | 一种任务分配方法及装置 | |
CN109474569A (zh) | 一种检测web缓存欺骗的方法及系统 | |
CN107959696A (zh) | 一种日志话单处理方法及系统 | |
CN105447086A (zh) | 文件存储方法及实现该存储方法的服务器 | |
CN107707590A (zh) | 数据传输的系统、方法及装置 | |
CN106453663A (zh) | 改进的基于云服务的存储扩容方法及装置 | |
CN104333803B (zh) | 防止视频编辑时丢帧的方法、设备及系统 | |
CN107682398A (zh) | 数据发送对象的选择方法、装置、计算机设备及存储介质 | |
CN104735097A (zh) | 信息的收集方法和系统 | |
CN106407307A (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 |