WO2016127693A1 - 一种发送业务数据的方法和存储系统 - Google Patents
一种发送业务数据的方法和存储系统 Download PDFInfo
- Publication number
- WO2016127693A1 WO2016127693A1 PCT/CN2015/096466 CN2015096466W WO2016127693A1 WO 2016127693 A1 WO2016127693 A1 WO 2016127693A1 CN 2015096466 W CN2015096466 W CN 2015096466W WO 2016127693 A1 WO2016127693 A1 WO 2016127693A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- target data
- data
- read
- address information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
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
Definitions
- the present invention relates to the field of Internet technologies, and in particular, to a method and a storage system for transmitting service data.
- a service provider usually sets up multiple servers, and several servers can form a server group to provide service data for a certain network service.
- the file of the network service (such as a video file) can be divided into multiple data blocks and stored in each server of the server group.
- the server When the user sends a data request for the video to a server, the server will be from the server group.
- Each server reads the service data of the video, stores the read service data into the cache space of the server, and sends the service data in the cache space to the user terminal.
- the application management system After the user installs the application developed by the service provider, the application management system usually assigns the user to a specified server, and when the user requests the business data, the server provides the service data.
- the server During the running process of the server, there are often cases in which a large number of users request service data from a user corresponding to a certain server.
- the cache space of the server stores a large amount of service data. In this case, the cache space is quickly stored. The time automatically clears the stored business data in a first-to-last order, and thus may cause loss of business data required by users in the cache.
- an embodiment of the present invention provides a method and a storage system for transmitting service data.
- the technical solution is as follows:
- a method of transmitting service data is provided, the method being applied to a storage system,
- the storage system includes at least two servers, wherein each server includes a cache, and the method is performed by the first server, including:
- the terminal Receiving, by the terminal, a first read data request, where the first read data request includes address information of the first target data, and the address information of the first target data includes a start address and a length of the first target data;
- the cache usage frequency refers to a size of data read from a cache within a preset time
- a start address of the second target data is continuous with a last address of the first target data, and an end address of the first target data It is obtained based on the start address and length of the first target data.
- the acquiring the second target according to the address information of the first target data and the preset pre-reading algorithm Address information of the data including:
- the first server Determining, when the first server does not store the file to which the first target data corresponding to the first read data request belongs, the first server according to the address information of the first target data and the preset pre-reading An algorithm obtains address information of the second target data.
- the method further includes:
- the pre-read data request further includes the read-ahead length of the second target data.
- the second server is a server with the smallest cache usage frequency in the storage system.
- a storage system in a second aspect, includes at least two servers, wherein each server includes a cache;
- a first server configured to receive a first read data request sent by the terminal, where the first read data request includes address information of the first target data, and the address information of the first target data includes the start of the first target data a first address and a length; obtaining address information of the second target data according to the address information of the first target data and a preset pre-reading algorithm; acquiring a local cache usage frequency, wherein the cache usage frequency is a preset time The size of the data read from the cache; when it is determined that the local cache usage frequency is greater than the preset first threshold, the pre-read data request is sent to the second server, where the pre-read data request includes the address of the second target data Information, the cache usage frequency of the second server is less than the first threshold; receiving a second read data request sent by the terminal, where the second read data request includes address information of the second target data; The address information of the second target data determines that the second target data is stored in the cache of the second server; and the second server is requested The second target data and transmits to the terminal;
- the second server is configured to perform data pre-reading according to the address information of the second target data, and is further configured to send the second target data requested by the first server to the first server.
- a start address of the second target data is continuous with a last address of the first target data, and an end address of the first target data It is obtained based on the start address and length of the first target data.
- the first server is configured to determine that the first corresponding to the first read data request is not stored locally When the file to which the target data belongs, the first server acquires the address information of the second target data according to the address information of the first target data and the preset pre-read algorithm.
- the first server is further configured to use address information of the first target data and preset pre-reading An algorithm for obtaining a pre-read length of the second target data;
- the pre-read data request further includes the read-ahead length of the second target data.
- the second server The server with the least frequency of use is cached in the storage system.
- the first read data request sent by the terminal is received, and the first read data request includes the address information of the first target data, and the second target is obtained according to the address information of the first target data and the preset pre-read algorithm.
- the address information of the data is used to obtain the cache usage frequency of the first server, and when the cache usage frequency of the first server is greater than the preset first threshold, the pre-read data request is sent to the second server, and the cache frequency of the second server is less than the first a threshold, receiving a second read data request sent by the terminal, requesting the second target data from the second server, and sending the second target data to the terminal, so that when the cache frequency of the first server is used, the first server may notify the cache usage frequency A smaller server reads the business data and reduces the business data that the first server needs to cache, thereby reducing the possibility of loss of business data required by the user in the first server.
- FIG. 1 is a flowchart of a method for transmitting service data according to an embodiment of the present invention
- FIG. 3 is a schematic structural diagram of a server according to an embodiment of the present invention.
- An embodiment of the present invention provides a method for transmitting service data, where the method is applied to a storage system, where the storage system includes at least two servers, wherein each server includes a cache, and the method is performed by the first server.
- an optional system framework diagram is provided in the embodiment of the present invention, including a server and a terminal, where the server may be a server for sending service data, where the terminal may be The terminal that requests the service data, the first server may be a server corresponding to the server identifier pre-stored in the application installed by the terminal.
- a file of a network service (such as a video file) may be divided into multiple data blocks and stored in each server of the server group.
- the server may The data block of the file is read from each server of the storage system, and the read data block is stored in the local cache space. After all the service data corresponding to the request of the terminal is read, the service data is sent. Give the terminal.
- the processing flow of the method may include the following steps:
- Step 101 Receive a first read data request sent by the terminal, where the first read data request includes address information of the first target data, and the address information of the first target data includes a start address and a length of the first target data.
- Step 102 Acquire address information of the second target data according to the address information of the first target data and the preset pre-read algorithm.
- Step 103 Obtain a cache usage frequency of the first server, where the cache usage frequency refers to a size of data read from the cache within a preset time.
- Step 104 When it is determined that the cache usage frequency of the first server is greater than a preset first threshold, send a pre-read data request to the second server, where the pre-read data request includes address information of the second target data, and the cache frequency of the second server is used. Less than the first threshold.
- Step 105 Receive a second read data request sent by the terminal, where the second read data request includes address information of the second target data.
- Step 106 Determine, according to the address information of the second target data, that the second target data is saved in the cache of the second server.
- Step 107 Request second target data from the second server, and send the data to the terminal.
- the first read data request sent by the terminal is received, and the first read data request includes the address information of the first target data, and the second target is obtained according to the address information of the first target data and the preset pre-read algorithm.
- the address information of the data is used to obtain the cache usage frequency of the first server, and when the cache usage frequency of the first server is greater than the preset first threshold, the pre-read data request is sent to the second server, and the cache frequency of the second server is less than the first a threshold, receiving a second read data request sent by the terminal, requesting the second target data from the second server, and sending the second target data to the terminal, so that when the cache frequency of the first server is used, the first server may notify the cache usage frequency
- a smaller server reads the business data and reduces the business data that the first server needs to cache, thereby reducing the number of users in the first server. The possibility of missing business data is required.
- An embodiment of the present invention provides a method for transmitting service data, where the method is applied to a storage system, where the storage system includes at least two servers, where each server includes a cache for storing and providing service data to the terminal.
- the method can be performed by the first server.
- Step 101 Receive a first read data request sent by the terminal, where the first read data request includes address information of the first target data, and the address information of the first target data includes a start address and a length of the first target data.
- the user can install an application for acquiring business data in the terminal.
- an application for acquiring business data
- the application can be opened in the terminal, and then the corresponding option of the video file is clicked.
- the terminal will detect the selection instruction corresponding to the video file, and send a data request of the video file to the server.
- the first server receives the data request, and then reads the service data corresponding to the data request, and stores the service data in a local cache to send the service data to the terminal.
- the first server may parse the first read data request, obtain the address information of the first target data, and the address information of the first target data when receiving the data request (ie, the first read data request) sent by the terminal.
- Information such as the start address and length of the first target data may be included.
- Step 102 Acquire address information of the second target data according to the address information of the first target data and the preset pre-read algorithm.
- the first server may obtain information such as a start address and a length of the first target data, and further determine address information of the second target data, such as a start of the second target data. address.
- the length interval may be preset in the first server, and the first server may determine the end address of the first target data according to the start address and the length of the first target data, and further determine that the end address interval of the first target data is preset. The length-interval address is then used as the starting address of the second target data.
- the start address of the second target data is continuous with the end address of the first target data, and the end address of the first target data is obtained according to the start address and the length of the first target data.
- the first server may first query whether the file corresponding to the service data corresponding to the received data request is stored in the local cache.
- the process of step 102 may be as follows: determining that the first server does not store the first read.
- the first server acquires the address information of the second target data according to the address information of the first target data and the preset pre-read algorithm.
- the first server may parse the data request, obtain the file identifier, and then query, in the local cache, whether the file identifier is stored. If the file corresponding to the file identifier is not stored in the local cache, the first server may obtain the address information of the second target data according to the address information of the first target data and the preset pre-read algorithm. In addition, if the first server queries the file corresponding to the file identifier in the local cache, the service data corresponding to the data request is obtained in the stored file, and the obtained service data is sent to the terminal.
- the first server may further obtain the pre-read length of the second target data, and the corresponding processing may be as follows: acquiring the pre-read of the second target data according to the address information of the first target data and the preset pre-reading algorithm. length.
- the first server may determine the pre-read range information, and the pre-read range information may be determined according to the address information of the first target data and a preset pre-read algorithm.
- the first server may determine the end address of the first target data according to the start address and the length of the first target data, and further determine the pre-read length of the second target data according to a pre-read algorithm preset. For example, if the starting address of the first target data is 1M of the file and the length is 1M, the starting address of the second target data may be determined to be 2M of the file, and then the second may be determined according to a preset pre-reading algorithm. The read-ahead length of the target data, which is 1M.
- Step 103 Obtain a cache usage frequency of the first server, where the cache usage frequency refers to a size of data read from the cache within a preset time.
- the first server when the first server provides the service data to the multiple terminals, the first server will continue to store the service data in the local cache, and the first server may determine the service data stored in the local cache by the preset duration, and determine the storage.
- the proportion of the storage space used by the service data in the local cache that is, the frequency of use of the cache.
- the frequency of use of the cache can reflect the current working state of the server.
- the higher the cache usage frequency of the server the default duration is inbound to the server.
- the larger the amount of data for the requested business data the more busy the server is.
- the first server uses the service data stored in 3 seconds.
- the storage space is 50% of the local cache, and the cache usage is 50%.
- the first server may obtain the local cache usage frequency when the preset period is reached, or obtain the local cache usage frequency when the preset trigger condition is met.
- Step 104 When it is determined that the cache usage frequency of the first server is greater than a preset first threshold, send a pre-read data request to the second server, where the pre-read data request includes address information of the second target data, and the cache frequency of the second server is used. Less than the first threshold.
- a server in a server group can be set as a management server, and the management server can be used to summarize the cache usage frequency of each server.
- Each server in the server group to which the first server belongs can obtain the respective cache usage frequency, and then can send the respective cache usage frequency to the management server, and the management server can correspond the identifier of each server to the cache usage frequency of each server.
- Storage establish a cache usage frequency information table for each server, as shown in the following table:
- the management server may send the cache usage frequency information table to each server in the server group, and each server receives the cache usage frequency information table to learn the cache usage frequency of other servers.
- the first server After the first server obtains the local cache usage frequency, it may determine whether the local cache usage frequency is greater than a preset first threshold. If the local cache usage frequency is greater than a preset first threshold, the first server may be in the storage system. The server is randomly selected to send a pre-read data request to the second server, where the pre-read data request includes address information of the second target data, and the cache usage frequency of the second server is less than the first threshold. For example, if the first threshold is 60, the first server (CA1) can determine that the local cache usage frequency is greater than 60, and then can determine that the cache usage frequency of the server CA2 and the server CA3 is less than 60, so that the pre-read data request can be sent to the server CA2.
- the first server CA1 can determine that the local cache usage frequency is greater than 60, and then can determine that the cache usage frequency of the server CA2 and the server CA3 is less than 60, so that the pre-read data request can be sent to the server CA2.
- a file of a network service (such as a video file) may be divided into a plurality of data blocks and stored in each server in the storage system.
- the second server may obtain the address information of the second target data in the pre-read data request from each server of the storage system. Reading the data block corresponding to the second target data, the second server may form a data stripe of the second target data according to the read data block, and store the data stripe in a local cache space for subsequent deal with.
- the pre-read data request sent by the first server may further include a pre-read length of the second target data.
- the first server may send a pre-read request to the second server, where the pre-read request may carry the pre-read length of the second target data.
- the second server receives the pre-read request, and then determines a corresponding pre-read range of the second target data according to the pre-read length, the pre-set read-ahead algorithm and the address information of the second server, and the read-ahead range can be read.
- Read business data within the scope. For example, in the address information of the second server, the starting address is 1M of the file, and the pre-reading length is 3M, and the second server can read the 3M service data after the file 1M.
- the second server is a server with the least cache usage frequency in the storage system.
- the server with the least cache usage frequency may be determined. For example, if the first threshold is 60, the first server (CA1) may determine that the local cache usage frequency is greater than 60, and then may determine that the cache usage frequency of the server CA2 and the server CA3 is less than 60, and determine that the cache usage frequency of the server CA2 is the smallest.
- Step 105 Receive a second read data request sent by the terminal, where the second read data request includes address information of the second target data.
- the first server may record the pre-read range of the second server.
- the first server may parse the second read data request to obtain the second target data.
- the address information further determines the range of the service data corresponding to the second read data request.
- Step 106 Determine, according to the address information of the second target data, that the second target data is saved in the cache of the second server.
- each file stored in the server group has a corresponding server in the server group, used to record the identifier of the first server that reads the file, and can be sent to the server that reads the file to protect the file.
- the protection identifier of the file data content is a corresponding server in the server group, used to record the identifier of the first server that reads the file, and can be sent to the server that reads the file to protect the file.
- the second server is the first server to read file A, and the second server needs to send a read request to the server corresponding to file A, and the server corresponding to file A will protect the file A.
- the knowledge is sent to the second server, and the second server is recorded as the first server that reads the file A.
- the service data of the file A can be Corresponding to the protection identifier of the file A, so that the service data of the file A read by the second server cannot be modified, so that the security of the read service data can be guaranteed.
- the first server When the first server needs to read the service data of the file A, the first server also needs to send a read request to the server corresponding to the file A, and the server corresponding to the file A sends the protection identifier of the file A to the first server. And notifying the first server that the first server that reads the file A is the second server, and the first server sends a read request of the file A to the second server, thereby obtaining the service data of the file A.
- the first server may determine the file to which the service data corresponding to the second read data request belongs, determine the server corresponding to the file, and then send a read request to the server, so that the file may be read.
- the server is the second server, and it can be determined that the second target data is saved in the cache of the second server.
- Step 107 Request second target data from the second server, and send the data to the terminal.
- the second server may send a second read data request to the second server, and the second server receives the second read data request, and then the first The service data corresponding to the second-read data request (that is, the second target data) is sent to the first server, and after receiving the service data, the first server may send the service data to the terminal.
- the first read data request sent by the terminal is received, and the first read data request includes the address information of the first target data, and the second target is obtained according to the address information of the first target data and the preset pre-read algorithm.
- the address information of the data is used to obtain the cache usage frequency of the first server, and when the cache usage frequency of the first server is greater than the preset first threshold, the pre-read data request is sent to the second server, and the cache frequency of the second server is less than the first a threshold, receiving a second read data request sent by the terminal, requesting the second target data from the second server, and sending the second target data to the terminal, so that when the cache frequency of the first server is used, the first server may notify the cache usage frequency A smaller server reads the business data and reduces the business data that the first server needs to cache, thereby reducing the possibility of loss of business data required by the user in the first server.
- an embodiment of the present invention further provides a storage system, and the storage system Include at least two servers, each of which includes a cache;
- a first server configured to receive a first read data request sent by the terminal, where the first read data request includes address information of the first target data, and the address information of the first target data includes the start of the first target data a first address and a length; obtaining address information of the second target data according to the address information of the first target data and a preset pre-reading algorithm; acquiring a local cache usage frequency, wherein the cache usage frequency is a preset time The size of the data read from the cache; when it is determined that the local cache usage frequency is greater than the preset first threshold, the pre-read data request is sent to the second server, where the pre-read data request includes the address of the second target data Information, the cache usage frequency of the second server is less than the first threshold; receiving a second read data request sent by the terminal, where the second read data request includes address information of the second target data; The address information of the second target data determines that the second target data is stored in the cache of the second server; and the second server is requested The second target data and transmits to the terminal;
- the second server is configured to perform data pre-reading according to the address information of the second target data.
- a start address of the second target data is continuous with a last address of the first target data, and an end address of the first target data is obtained according to a start address and a length of the first target data.
- the first server is configured to: when the file to which the first target data corresponding to the first read data request belongs is not stored, the first server is configured according to the address of the first target data.
- the information and the preset pre-reading algorithm acquire the address information of the second target data.
- the first server is further configured to obtain a pre-read length of the second target data according to the address information of the first target data and a preset pre-read algorithm;
- the pre-read data request further includes the read-ahead length of the second target data.
- the second server is a server with the least cache usage frequency in the storage system.
- the first read data request sent by the terminal is received, and the first read data request includes the address information of the first target data, and the second target is obtained according to the address information of the first target data and the preset pre-read algorithm.
- the address information of the data is used to obtain the cache usage frequency of the first server, and when the cache usage frequency of the first server is greater than the preset first threshold, the pre-read data request is sent to the second server, and the cache frequency of the second server is less than the first a threshold, receiving a second read data request sent by the terminal, requesting the second target data from the second server, and sending the second target data to the terminal, so that when the cache frequency of the first server is used, the first server may notify the cache usage frequency Smaller server to read the business
- the data reduces the business data that the first server needs to cache, thereby reducing the possibility of loss of business data required by the user in the first server.
- FIG. 3 is a schematic structural diagram of the server.
- This server can be used as the first server in the above embodiment.
- the server includes a processor 310, a transceiver 320, and a memory 330, and the transceiver 320 and the memory 330 are respectively coupled to the processor 310, wherein:
- the memory 330 is configured to receive a first read data request sent by the terminal, where the first read data request includes address information of the first target data, and the address information of the first target data includes a start of the first target data. Address and length;
- the processor 310 is configured to acquire address information of the second target data according to the address information of the first target data and a pre-read algorithm preset in the memory 330.
- the processor 310 is further configured to acquire a cache usage frequency of the first server, where the cache usage frequency refers to a size of data read from a cache in a preset time period;
- the processor 310 is further configured to: when the cache usage frequency of the first server is greater than a preset first threshold, the trigger transceiver 320 sends a pre-read data request to the second server, where the pre-read data request includes the first The address information of the second target data, the cache usage frequency of the second server is less than the first threshold;
- the transceiver 320 is configured to receive a second read data request sent by the terminal, where the second read data request includes address information of the second target data;
- the processor 310 is further configured to determine, according to the address information of the second target data, that the second target data is saved in a cache of the second server;
- the transceiver 320 is further configured to request the second target data from the second server, and send the data to the terminal.
- a start address of the second target data is continuous with a last address of the first target data, and an end address of the first target data is obtained according to a start address and a length of the first target data.
- the processor 310 is configured to: when the first server does not store the file to which the first target data corresponding to the first read data request belongs, the first server is configured according to the first target The address information of the data and the preset pre-reading algorithm acquire the address information of the second target data.
- the processor 310 is further configured to acquire a pre-read length of the second target data according to the address information of the first target data and a preset pre-read algorithm;
- the pre-read data request further includes the read-ahead length of the second target data.
- the second server is a server with the least cache usage frequency in the storage system.
- the first read data request sent by the terminal is received, and the first read data request includes the address information of the first target data, and the second target is obtained according to the address information of the first target data and the preset pre-read algorithm.
- the address information of the data is used to obtain the cache usage frequency of the first server, and when the cache usage frequency of the first server is greater than the preset first threshold, the pre-read data request is sent to the second server, and the cache frequency of the second server is less than the first a threshold, receiving a second read data request sent by the terminal, requesting the second target data from the second server, and sending the second target data to the terminal, so that when the cache frequency of the first server is used, the first server may notify the cache usage frequency A smaller server reads the business data and reduces the business data that the first server needs to cache, thereby reducing the possibility of loss of business data required by the user in the first server.
- a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
- the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种发送业务数据的方法和存储系统,属于互联网技术领域。所述方法包括:接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端。采用本发明,可以降低第一服务器中用户需要的业务数据丢失的可能性。
Description
本申请要求于2015年2月13日提交中国专利局、申请号为201510080900.6、发明名称为“一种发送业务数据的方法和存储系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明涉及互联网技术领域,特别涉及一种发送业务数据的方法和存储系统。
随着互联网技术的发展,互联网的应用越来越广泛,功能越来越强大,用户可以通过互联网,向某服务器发送数据请求,以获取自己所需的业务数据。
在实际中,业务提供商通常会设置多台服务器,其中,若干台服务器可以组成一个服务器组,为某网络业务提供业务数据。该网络业务的文件(如一个视频文件)可以分成多个数据块,分别存储到该服务器组的各服务器中,当用户向某服务器发送该视频的数据请求时,该服务器会从该服务器组的各服务器中读取该视频的业务数据,将读取到的业务数据存储到该服务器的缓存空间中,并将缓存空间中的业务数据发送给用户的终端。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
用户安装该业务提供商开发的应用程序后,该应用程序的管理系统通常会将该用户分配到一个指定的服务器上,该用户请求业务数据时,会由该服务器提供业务数据。服务器在运行的过程中,经常会出现某个服务器对应的用户中,大量用户同时请求业务数据的情况,该服务器的缓存空间中会存储大量的业务数据,这时,缓存空间会快速的按存储时间由先到后的顺序自动清除其存储的业务数据,因此,可能会造成缓存中用户需要的业务数据丢失。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种发送业务数据的方法和存储系统。所述技术方案如下:
第一方面,提供了一种发送业务数据的方法,所述方法应用于存储系统中,
所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存,所述方法由第一服务器执行,包括:
接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;
获取所述第一服务器的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;
确定所述第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;
接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;
根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;
向所述第二服务器请求所述第二目标数据,并发送给所述终端。
结合第一方面,在该第一方面的第一种可能实现方式中,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
结合第一方面的第一种可能实现方式,在该第一方面的第二种可能实现方式中,所述根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,包括:
确定所述第一服务器中未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
结合第一方面的第一种可能实现方式,在该第一方面的第三种可能实现方式中,还包括:
根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
结合第一方面,在该第一方面的第四种可能实现方式中,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
第二方面,一种存储系统,其特征在于,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存;
第一服务器,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;获取本地的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;确定本地的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;向所述第二服务器请求所述第二目标数据,并发送给所述终端;
所述第二服务器,用于根据所述第二目标数据的地址信息进行数据预读;还用于向所述第一服务器发送所述第一服务器请求的第二目标数据。
结合第二方面,在该第二方面的第一种可能实现方式中,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
结合第二方面的第一种可能实现方式,在该第二方面的第二种可能实现方式中,所述第一服务器,用于确定本地未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
结合第二方面的第一种可能实现方式,在该第二方面的第三种可能实现方式中,所述第一服务器还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;
相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
结合第二方面,在该第二方面的第四种可能实现方式中,所述第二服务器
为所述存储系统中缓存使用频率最小的服务器。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,接收终端发送的第一读数据请求,第一读数据请求包括第一目标数据的地址信息,根据第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,获取第一服务器的缓存使用频率,确定第一服务器的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,第二服务器的缓存使用频率小于第一阈值,接收终端发送的第二读数据请求,向第二服务器请求第二目标数据,并发送给终端,这样,当第一服务器的缓存使用频率较大时,第一服务器可以通知缓存使用频率较小的服务器来读取业务数据,减少第一服务器需要缓存的业务数据,从而可以降低第一服务器中用户需要的业务数据丢失的可能性。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图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所述的方法,其特征在于,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息,包括:确定所述第一服务器中未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
- 根据权利要求1所述的方法,其特征在于,还包括:根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
- 根据权利要求1所述的方法,其特征在于,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
- 一种存储系统,其特征在于,所述存储系统包括至少两个服务器,其中,每个服务器均包括缓存;第一服务器,用于接收终端发送的第一读数据请求,所述第一读数据请求包括第一目标数据的地址信息,所述第一目标数据的地址信息包括所述第一目标数据的起始地址和长度;根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息;获取本地的缓存使用频率,其中所述缓存使用频率是指预设时间内从缓存读取的数据的大小;确定本地的缓存使用频率大于预设的第一阈值时,向第二服务器发送预读数据请求,所述预读数据请求包括所述第二目标数据的地址信息,所述第二服务器的缓存使用频率小于所述第一阈值;接收所述终端发送的第二读数据请求,所述第二读数据请求包括所述第二目标数据的地址信息;根据所述第二目标数据的地址信息确定所述第二服务器的缓存中保存有所述第二目标数据;向所述第二服务器请求所述第二目标数据,并发送给所述终端;所述第二服务器,用于根据所述第二目标数据的地址信息进行数据预读;还用于向所述第一服务器发送所述第一服务器请求的第二目标数据。
- 根据权利要求6所述的存储系统,其特征在于,所述第二目标数据的起始地址与所述第一目标数据的末尾地址连续,所述第一目标数据的末尾地址是根据第一目标数据的起始地址和长度得到的。
- 根据权利要求6所述的存储系统,其特征在于,所述第一服务器,用于确定本地未存储有所述第一读数据请求对应的第一目标数据所属的文件时,则所述第一服务器根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的地址信息。
- 根据权利要求6所述的存储系统,其特征在于,所述第一服务器,还用于根据所述第一目标数据的地址信息以及预设的预读算法,获取第二目标数据的预读长度;相应地,所述预读数据请求还包括所述第二目标数据的所述预读长度。
- 根据权利要求6所述的存储系统,其特征在于,所述第二服务器为所述存储系统中缓存使用频率最小的服务器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510080900.6A CN104683459B (zh) | 2015-02-13 | 2015-02-13 | 一种发送业务数据的方法和存储系统 |
CN201510080900.6 | 2015-02-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016127693A1 true WO2016127693A1 (zh) | 2016-08-18 |
Family
ID=53318026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/096466 WO2016127693A1 (zh) | 2015-02-13 | 2015-12-04 | 一种发送业务数据的方法和存储系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104683459B (zh) |
WO (1) | WO2016127693A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107918619A (zh) * | 2016-10-10 | 2018-04-17 | 北京奇虎科技有限公司 | 广告展示方法和装置 |
CN113691610A (zh) * | 2021-08-20 | 2021-11-23 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113691609A (zh) * | 2021-08-20 | 2021-11-23 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113821460A (zh) * | 2021-08-27 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104683459B (zh) * | 2015-02-13 | 2018-05-11 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
CN109739570B (zh) * | 2018-12-24 | 2022-04-08 | 新华三技术有限公司 | 一种数据读取方法、服务器控制设备、服务器及计算机可读存储介质 |
CN109783015B (zh) * | 2018-12-24 | 2022-05-10 | 新华三技术有限公司 | 文件传输方法、装置、服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020099785A1 (en) * | 2000-11-14 | 2002-07-25 | Doug Teeple | Enhanced multimedia mobile content delivery and message system using cache management |
CN101764824A (zh) * | 2010-01-28 | 2010-06-30 | 深圳市同洲电子股份有限公司 | 一种分布式缓存控制方法、装置及系统 |
CN103425785A (zh) * | 2013-08-22 | 2013-12-04 | 新浪网技术(中国)有限公司 | 数据存储系统及其用户数据存储、读取方法 |
CN104683459A (zh) * | 2015-02-13 | 2015-06-03 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
CN102075554B (zh) * | 2009-11-19 | 2013-07-03 | 中国移动通信集团北京有限公司 | 一种基于soa架构的服务处理方法及其系统 |
CN102014150B (zh) * | 2010-09-29 | 2013-12-11 | 厦门市美亚柏科信息股份有限公司 | 一种基于udp分布式小文件存储系统及其数据处理方法 |
CN102111448B (zh) * | 2011-01-13 | 2013-04-24 | 华为技术有限公司 | 分布式哈希表dht存储系统的数据预取方法、节点和系统 |
-
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 |
---|---|---|---|---|
US20020099785A1 (en) * | 2000-11-14 | 2002-07-25 | Doug Teeple | Enhanced multimedia mobile content delivery and message system using cache management |
CN101764824A (zh) * | 2010-01-28 | 2010-06-30 | 深圳市同洲电子股份有限公司 | 一种分布式缓存控制方法、装置及系统 |
CN103425785A (zh) * | 2013-08-22 | 2013-12-04 | 新浪网技术(中国)有限公司 | 数据存储系统及其用户数据存储、读取方法 |
CN104683459A (zh) * | 2015-02-13 | 2015-06-03 | 华为技术有限公司 | 一种发送业务数据的方法和存储系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107918619A (zh) * | 2016-10-10 | 2018-04-17 | 北京奇虎科技有限公司 | 广告展示方法和装置 |
CN107918619B (zh) * | 2016-10-10 | 2024-02-02 | 三六零科技集团有限公司 | 广告展示方法和装置 |
CN113691610A (zh) * | 2021-08-20 | 2021-11-23 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113691609A (zh) * | 2021-08-20 | 2021-11-23 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113691610B (zh) * | 2021-08-20 | 2024-04-09 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113691609B (zh) * | 2021-08-20 | 2024-04-09 | Oppo广东移动通信有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113821460A (zh) * | 2021-08-27 | 2021-12-21 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
CN113821460B (zh) * | 2021-08-27 | 2024-03-01 | 济南浪潮数据技术有限公司 | 一种文件预读缓存分配方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104683459B (zh) | 2018-05-11 |
CN104683459A (zh) | 2015-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016127693A1 (zh) | 一种发送业务数据的方法和存储系统 | |
CN113010818B (zh) | 访问限流方法、装置、电子设备及存储介质 | |
EP2566107A1 (en) | Apparatus and method for achieving the function of domain name resolution agent | |
US10477253B2 (en) | Method and apparatus for detecting video playability | |
JP2017508190A5 (zh) | ||
CN107332908B (zh) | 一种数据传输方法及其系统 | |
WO2019041738A1 (zh) | 客户资源获取方法、装置、终端设备及存储介质 | |
CN106098061B (zh) | 一种基于安卓系统的语音交互方法和装置 | |
CN102170479A (zh) | Web缓存的更新方法及Web缓存的更新装置 | |
CN110737388A (zh) | 数据预读方法、客户端、服务器以及文件系统 | |
US8375124B1 (en) | Resumable upload for hosted storage systems | |
US10264000B2 (en) | Malicious website access method and apparatus | |
CN112087644A (zh) | 拉流请求处理方法、装置、系统、电子设备和存储介质 | |
WO2016146011A1 (zh) | 一种创建虚拟非易失性存储介质的方法、系统及管理系统 | |
CN114928758A (zh) | 直播异常检测处理方法及装置 | |
CN104079600B (zh) | 文件存储方法、装置、访问客户端及元数据服务器系统 | |
CN105786997A (zh) | 基于iOS系统的图片缓存与压缩方法 | |
CN105988941B (zh) | 缓存数据处理方法和装置 | |
JP2023500418A (ja) | Cdnにおけるurlリフレッシュ方法、装置、機器及びcdnノード | |
CN105893429A (zh) | 用于优化web缓存的方法及系统 | |
JP2014002634A (ja) | 通信制御システム、集約サーバおよび通信制御方法 | |
WO2020000783A1 (zh) | 通讯录云处理方法、装置、计算机设备及可读存储介质 | |
CN106453663B (zh) | 改进的基于云服务的存储扩容方法及装置 | |
US10498787B2 (en) | Communication apparatus, communication method, and program | |
WO2019242279A1 (zh) | 一种消息处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15881842 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15881842 Country of ref document: EP Kind code of ref document: A1 |