Movatterモバイル変換


[0]ホーム

URL:


CN109756581A - A kind of document transmission system and method, a kind of calculating equipment and storage medium - Google Patents

A kind of document transmission system and method, a kind of calculating equipment and storage medium
Download PDF

Info

Publication number
CN109756581A
CN109756581ACN201910169498.7ACN201910169498ACN109756581ACN 109756581 ACN109756581 ACN 109756581ACN 201910169498 ACN201910169498 ACN 201910169498ACN 109756581 ACN109756581 ACN 109756581A
Authority
CN
China
Prior art keywords
download
downloading
file destination
file
instruction
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
Application number
CN201910169498.7A
Other languages
Chinese (zh)
Other versions
CN109756581B (en
Inventor
梁斌
崔珑
高勇
岳雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Kingsoft Digital Network Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Online Game Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuhai Kingsoft Online Game Technology Co LtdfiledCriticalZhuhai Kingsoft Online Game Technology Co Ltd
Priority to CN201910169498.7ApriorityCriticalpatent/CN109756581B/en
Publication of CN109756581ApublicationCriticalpatent/CN109756581A/en
Application grantedgrantedCritical
Publication of CN109756581BpublicationCriticalpatent/CN109756581B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Landscapes

Abstract

The application provides a kind of document transmission system and method, a kind of calculating equipment and storage medium, and one of document transmission method includes: to receive request end to request the downloading of file destination, wherein the downloading request includes the identification information of file destination;According to the identification information of the file destination, the storage location of file destination is determined;In the case where the storage location of file destination is caching, the file destination in caching is back to request end;In the case where the storage location of the file destination is disk, send a notification message to request end, notification message includes storage location information of the file destination in disk;In the case where the storage location of file destination is server, downloading request is converted to the download instruction of file destination, the file destination is requested to server according to download instruction, and the file destination received is pushed into the caching.

Description

A kind of document transmission system and method, a kind of calculating equipment and storage medium
Technical field
This application involves Internet technical field, in particular to a kind of document transmission system and method, a kind of calculating equipmentAnd storage medium.
Background technique
The common document down loading method in the existing micro- end of game is as follows: first by data file by block (generally scene orResource binding relationship) it is packaged and is distributed to CDN (Content Delivery Network, content distributing network), thenWhen client runs A scene, automatic B scene and the following resource packet downloaded in backstage is to client.This method realization is simple,But there is following disadvantage:
Game experiencing is discontinuous: since the basic unit of downloading is larger, when B scene is not downloaded completely, game must be waitedTo.
There are certain risks for game management: must assure that the All Files of any one version in strict accordance with above-mentioned module pointClass simultaneously bundlees.If there is resource in certain block basic unit is not complete or binding relationship mistake, then client will be unable to normallyOperation.
Failure game retries cost height:, may if downloading data is wrong in the case where the content of certain block data file is bigEntire data file requires to re-download.
To the disadvantages mentioned above of the prior art, in conjunction with new client file systems, present applicant proposes a kind of new filesTransmission system and method, a kind of calculating equipment and storage medium.
Summary of the invention
In view of this, the embodiment of the present application provides a kind of document transmission system and method, a kind of calculating equipment and storageMedium, to solve technological deficiency existing in the prior art.
The embodiment of the present application discloses a kind of document transmission system, comprising:
Transmission module is configured as the downloading request for receiving request end to file destination, wherein downloading request includesThe identification information of file destination;
Management module is configured as the identification information according to the file destination, determines the storage location of file destination, instituteThe storage location for stating file destination includes caching, disk or server;
In the case where the storage location of the file destination is caching, during the management module is additionally configured to will to cacheThe file destination be back to request end via transmission module;
In the case where the storage location of the file destination is disk, the management module sends notice to request end and disappearsBreath, the notification message includes storage location information of the file destination in disk;
The storage location of the file destination be server in the case where, the management module, be additionally configured to will underThe download instruction that request is converted to file destination is carried, the system also includes: download module is configured as being referred to according to the downloadingIt enables to server and requests the file destination, and the file destination received is pushed into the caching.
Optionally, the system also includes scheduler modules;
Download module is configured to request the file destination to server according to the download instruction, and will connectThe file destination received pushes to the scheduler module;
The scheduler module, is configured as receiving the file destination pushed by the download module, and by the meshFile push is marked to caching.
Optionally, in the case where the storage location of the file destination is server,
The management module is additionally configured to judge the download instruction whether in downloading queue, if so, the scheduling mouldBlock is configured as priority of the setting download instruction in downloading queue;
If it is not, judging the download instruction whether in scheduling queue, if so, download instruction is pushed to downloading queue;IfIt is no, download instruction is added to scheduling queue.
Optionally, first threshold for caching current occupied capacity and being less than the caching is determined in the scheduler moduleIn the case that the quantity for being worth, and currently downloading file in the download module simultaneously is less than second threshold,
The scheduler module, be additionally configured to by scheduling queue the download instruction of highest priority push to downloading teamColumn.
Optionally, determine that the current occupied capacity of the caching is more than the first threshold of the caching in the scheduler moduleIn the case that the current quantity for downloading file simultaneously is more than second threshold in value or the download module,
The scheduler module is additionally configured to pause downloading queue to download module and pushes download instruction, or reduces downloadingSpeed of the queue to download module push download instruction.
Optionally, the system also includes:
Memory module is configured as in the case where determining that caching actual execution value is greater than third threshold value, will be in cachingFile destination push to the disk.
Optionally, the transmission module receives the downloading request of multiple request ends using individual process, and downloading is requestedPush to the management module;
The transmission module pushes file destination or notification message to multiple request ends by individual process.
Optionally, the download module is additionally configured to determine download engine and download policy according to network environment.
Optionally, the download module is specifically configured to:
Under different network environments, by switching download engine and different download policies is retried, it is optimal with determinationDownload engine and download policy;
The error situation of each download policy of dynamic monitoring deactivates the high download policy of error rate;
The speed of download of each download engine of dynamic monitoring reduces the slow download engine priority of speed of download.
Optionally, the download engine includes: Peer-to-Peer Network P2P, order line uniform resource locator Curl, bit stream BTWith form internet WinINet;
The download policy includes: hypertext transfer protocol HTTP2.0, HTTP1.1 and HTTPS.
Optionally, in the case where download policy is HTTP2.0, file destination is batch streaming small documents,
The transmission module is specifically configured to: being received the request end batch by multiple threads using individual process and is sent outThe downloading for the file destination risen is requested.
Optionally, in the case where the download engine is BT, the download module is specifically configured to:
Obtain corresponding seed file, wherein seed file is divided by the target complete file that fixed size is indexedAt multiple segments, and the check information of each segment is recorded respectively;
The download instruction that downloading request is converted to each segment is requested simultaneously to server respectively according to the download instructionThe data of each target fragment are verified, the target fragment split after verification is finally formed into the file destination.
On the other hand, the application also proposed a kind of document transmission method, comprising:
It receives request end to request the downloading of file destination, wherein the mark that the downloading request includes file destination is believedBreath;
According to the identification information of the file destination, the storage location of file destination, the storage of the file destination are determinedPosition includes caching, disk or server;
In the case where the storage location of the file destination is caching, the file destination in caching is back to and is askedAsk end;
In the case where the storage location of the file destination is disk, send a notification message to request end, the noticeMessage includes storage location information of the file destination in disk;
In the case where the storage location of the file destination is server, downloading request is converted under file destinationInstruction is carried, the file destination is requested to server according to the download instruction, and the file destination received is pushedTo the caching.
Optionally, in the case where the storage location of the file destination is server,
The download instruction is judged whether in downloading queue, if so, priority of the setting download instruction in downloading queue;
If it is not, judging the download instruction whether in scheduling queue, if so, download instruction is pushed to downloading queue;IfIt is no, download instruction is added to scheduling queue.
Optionally, the first threshold for caching current occupied capacity and being less than the caching is being determined, and simultaneously currentlyIn the case that the quantity of downloading file is less than second threshold,
By in scheduling queue the download instruction of highest priority push to downloading queue.
Optionally, it is determining that the currently occupied capacity that caches is more than first threshold, or is currently downloading file simultaneouslyIn the case that quantity is more than second threshold,
Pause downloading queue pushes download instruction, or reduces the speed of downloading queue push download instruction.
Optionally, storage location of the file destination in disk is determined according to the identification information, it will according to storage locationFile in caching is stored to the disk.
Optionally, further includes:
In the case where determining that caching actual execution value is greater than third threshold value, the file in caching is stored to the magneticDisk.
Optionally, it is requested using the downloading that individual process receives multiple request ends;
File destination or notification message are pushed to multiple request ends by individual process.
Optionally, download engine and download policy are determined according to network environment.
Optionally, download engine and download policy are determined according to network environment, comprising:
Under different network environments, by switching download engine and different download policies is retried, it is optimal with determinationDownload engine and download policy;
The error situation of each download policy of dynamic monitoring deactivates the high download policy of error rate;
The speed of download of each download engine of dynamic monitoring reduces the slow download engine priority of speed of download.
Optionally, the download engine includes: Peer-to-Peer Network P2P, order line uniform resource locator Curl, bit stream BTWith form internet WinINet;
The download policy includes: hypertext transfer protocol HTTP2.0, HTTP1.1 and HTTPS.
Optionally, in the case where the download policy is HTTP2.0, the file destination is batch streaming small documents,Request end is received to request the downloading of file destination, comprising:
Using individual process by multiple threads receive that request end batch initiates under the file destinationCarry request.
Optionally, in the case where the download engine is BT,
The download instruction that downloading request is converted to file destination requests the mesh to server according to the download instructionMark file, comprising:
Obtain corresponding seed file, wherein seed file is divided by the target complete file that fixed size is indexedAt multiple segments, and the check information of each segment is recorded respectively;
The download instruction that downloading request is converted to each segment is requested simultaneously to server respectively according to the download instructionThe data of each target fragment are verified, the target fragment split after verification is finally formed into the file destination.
On the other hand, present invention also provides a kind of calculating equipment, including memory, processor and storage are on a memoryAnd the computer instruction that can be run on a processor, the processor realize the document transmission method when executing described instructionStep.
On the other hand, present invention also provides a kind of computer readable storage medium, it is stored with computer instruction, this refers toThe step of document transmission method is realized when order is executed by processor.
A kind of document transmission system provided by the present application and method, a kind of calculating equipment and storage medium, are determining targetIn the case where the different storage locations of file, according to the storage location of file destination, file destination can be quickly sent toRequest end.Especially during game file is downloaded, the quick transmission of file destination not only can guarantee, while can guaranteeHigh-quality experience of the user to game.
Detailed description of the invention
Fig. 1 is the structural block diagram of the calculating equipment of the embodiment of the present application;
Fig. 2 is the schematic flow chart of the document transmission method of the embodiment of the present application;
Fig. 3 is position view of the a.txt file of the embodiment of the present application in segment;
Fig. 4 is the document transmission system structural schematic diagram of the embodiment of the present application.
Specific embodiment
Many details are explained in the following description in order to fully understand the application.But the application can be withMuch it is different from other way described herein to implement, those skilled in the art can be without prejudice to the application intension the case whereUnder do similar popularization, therefore the application is not limited by following public specific implementation.
The term used in this specification one or more embodiment be only merely for for the purpose of describing particular embodiments,It is not intended to be limiting this specification one or more embodiment.In this specification one or more embodiment and appended claimsThe "an" of singular used in book, " described " and "the" are also intended to including most forms, unless context is clearlyIndicate other meanings.It is also understood that term "and/or" used in this specification one or more embodiment refers to and includesOne or more associated any or all of project listed may combine.
It will be appreciated that though may be retouched using term first, second etc. in this specification one or more embodimentVarious information are stated, but these information should not necessarily be limited by these terms.These terms are only used to for same type of information being distinguished from each otherIt opens.For example, first can also be referred to as second, class in the case where not departing from this specification one or more scope of embodimentsAs, second can also be referred to as first.Depending on context, word as used in this " if " can be construed to" ... when " or " when ... " or " in response to determination ".
In this application, a kind of document transmission system and method, a kind of calculating equipment and storage medium are provided, belowEmbodiment in be described in detail one by one.
Fig. 1 is to show the structural block diagram of the calculating equipment 100 according to one embodiment of this specification.The calculating equipment 100Component include but is not limited to memory 110 and processor 120.Processor 120 is connected with memory 110 by bus 130,Database 150 is for saving data.
Calculating equipment 100 further includes access device 140, access device 140 enable calculate equipment 100 via one orMultiple networks 160 communicate.The example of these networks includes public switched telephone network (PSTN), local area network (LAN), wide area network(WAN), the combination of the communication network of personal area network (PAN) or such as internet.Access device 140 may include wired or wirelessOne or more of any kind of network interface (for example, network interface card (NIC)), such as IEEE802.11 wireless local areaNet (WLAN) wireless interface, worldwide interoperability for microwave accesses (Wi-MAX) interface, Ethernet interface, universal serial bus (USB) connectMouth, cellular network interface, blue tooth interface, near-field communication (NFC) interface, etc..
In one embodiment of this specification, other unshowned portions in the above-mentioned component and Fig. 1 of equipment 100 are calculatedPart can also be connected to each other, such as pass through bus.It should be appreciated that calculating device structure block diagram shown in FIG. 1 merely for the sake ofExemplary purpose, rather than the limitation to this specification range.Those skilled in the art can according to need, and increases or replaces itHis component.
Calculating equipment 100 can be any kind of static or mobile computing device, including mobile computer or mobile meterCalculate equipment (for example, tablet computer, personal digital assistant, laptop computer, notebook computer, net book etc.), movementPhone (for example, smart phone), wearable calculating equipment (for example, smartwatch, intelligent glasses etc.) or other kinds of shiftingDynamic equipment, or the static calculating equipment of such as desktop computer or PC.Calculating equipment 100 can also be mobile or state typeServer.
Wherein, processor 120 can execute the step in method shown in Fig. 2.Fig. 2 is to show to be implemented according to the application oneThe schematic flow chart of the document transmission method of example, including step 202 is to step 210.
Step 202: receiving request end and the downloading of file destination is requested, wherein the downloading request includes file destinationIdentification information.
Step 204: according to the identification information of the file destination, determining the storage location of file destination, the target textThe storage location of part includes caching, disk or server.
Step 206: in the case where the storage location of the file destination is caching, by the file destination in cachingIt is back to request end.
Step 208: in the case where the storage location of the file destination is disk, send a notification message to request end,The notification message includes storage location information of the file destination in disk.
Step 210: in the case where the storage location of the file destination is server, downloading request being converted into targetThe download instruction of file requests the file destination, and the target that will be received to server according to the download instructionFile push is to the caching.
It, can be by mesh according to the storage location of file destination in the case where determining the different storage locations of file destinationMark file is quickly sent to request end.Especially during game file is downloaded, the fast of file destination not only can guaranteeSpeed transmission, while user can be guaranteed to the good experience of game.
Wherein, the file destination is downloaded using single file data block as unit.So the network stabilization the case whereUnder, client only needs to download required file data blocks within the scope of present viewing field, without downloading entire file destination, in turnRealize downloading on demand.
Under the mode downloaded on demand, request end, which only needs to download, completes each necessary data of scene, so that it may in advanceIt into the scene, has downloaded and can enter without waiting for entire scene, while the downloading for also shortening file destination waits weekPhase.In addition, downloading is accurately bundled without scene with corresponding resource on demand, and no matter which scene file destination is inIn, when needs are using file destination, file destination can accurately be taken out carry out using.
Equally, in the case where downloading data finds mistake, it is only necessary to re-download corresponding unit;In addition in local textIt, also can be multiple to local file progress hot repair by timely downloading in the case that part has missing or mistake.
And during uploading a large amount of file data blocks to CDN or distributing a large amount of file data blocks to request end,It is at high cost to manage a large amount of file data blocks, it is time-consuming long, and it is easy to appear error of transmission, it to solve this problem, will be a large amount ofFile data blocks merge into a small amount of big file, i.e. bucket (Bucket), and a small amount of bucket is then uploaded to CDN.
During distributing a large amount of file data blocks to request end, pushed away by the metamessage in the file destination of request endCalculate file data blocks in the position of CDN, that is, determine file data blocks be located in which bucket, and determination file data blocks relative toThe offset and file size of bucket.Then pass through HTTP Range (HyperText Transfer ProtocolRange, hypertextArea covered by agreement) technology or customization P2P (peer-to-peer, point-to-point) download technology from the corresponding file of server pullData block.
For example, having 100 file data blocks in a bucket, if it find that the 30th file data blocks mistake, it is only necessary to againThe 30th file data blocks are downloaded, are downloaded without entire bucket.According to statistics, most of file data blocks are arrived in several KB in gameBetween several hundred KB, minority reaches 1MB or more, therefore it is very short to re-download the time under proper network environment.
Optionally, in the case where the storage location of the file destination is server,
The download instruction is judged whether in downloading queue, if so, priority of the setting download instruction in downloading queue;
If it is not, judging the download instruction whether in scheduling queue, if so, download instruction is pushed to downloading queue;IfIt is no, download instruction is received, and download instruction is pushed into downloading queue.
Determining that download instruction in the case where downloading queue, exists by improving the corresponding download instruction of the file destinationThe priority for downloading queue, so that the file destination can be downloaded preferentially.
Determining download instruction in the case where scheduling queue, the corresponding download instruction of file destination is pushed away from scheduling queueSend to downloading queue, and improve the download instruction in the priority of downloading queue so that the file destination can it is preferential underIt carries.
Download instruction is being determined neither in scheduling queue, and not in the case where downloading queue, by obtaining from serverThe download instruction of file destination is pushed to downloading queue by file destination, and improves the download instruction in the excellent of downloading queueFirst grade, so that the file destination can be downloaded preferentially.
Optionally, the first threshold for caching current occupied capacity and being less than the caching is being determined, and simultaneously currentlyIn the case that the quantity of downloading file is less than second threshold,
By in scheduling queue the download instruction of highest priority push to downloading queue.
It can make full use of the corresponding download engine of downloading queue by the above method, to improve the downloading of download engineSpeed.
Since response demand of the request end to different files is different, such as in gaming, terrain data is required at firstDownloading, and decorative kind object can slightly postpone to download, therefore introduce multistage dynamic priority, to meet, client is high to ring in real timeThe needs answered, the downloading queue includes: to download queue immediately, pre-download queue and idle downloading queue.
Wherein, the priority for downloading the download instruction in queue immediately is preferential greater than the download instruction in pre-download queueGrade, the priority of the download instruction in pre-download queue is greater than idle downloading queue free time downloading queue.
Need to download corresponding file destination immediately positioned at the download instruction downloaded in queue immediately, and request end needs togetherStep waits the return of file destination.Generally when opening some file destination discovery locally missing, the file destination is correspondingDownload instruction can be added to be downloaded in queue immediately.
Download instruction in pre-download queue corresponds to the file destination of non-instant needs, such as visual field week in gameThe resources such as the trees enclosed.And the pre-download queue can sequentially download in batches downloading therein when downloading queue immediately is emptyInstruct corresponding file destination.
Download instruction in idle downloading queue corresponds to the current nonessential file destination of client, such as nextThe resource of a scene.And the idle downloading queue can be when it be empty for downloading queue and pre-download queue immediately, sequentiallyBatch downloads the corresponding file destination of download instruction therein.
For having pushed to the download instruction in scheduling queue, request end can change the downloading in scheduling queue at any timeThe priority of instruction, including response priority.
During game running, in order to guarantee that client can quickly load streaming resource, such as NPC (Non-Player Character, non-player role) and building object, we use LOD (Levels of Detail, more detailsLevel) resource downloading and load mechanism.Specifically, the textures of each model object are divided into low precision, middle precision, high-precisionEtc. multiple superimposed layers, and during the loading process, the textures of each model object are downloaded and are loaded according to order from low to highIt is shown into scene, personage and building object are shown as from generally clearly to very clearly gradually transition, without waitingAll resource downloadings, which finish, can just see the position of model object in the scene.
Optionally, it is determining that the currently occupied capacity that caches is more than first threshold, or is currently downloading file simultaneouslyIn the case that quantity is more than second threshold,
Pause downloading queue pushes download instruction, or reduces the speed of downloading queue push download instruction.
It can make to download the gentle push download instruction of queue by the above method, and then guarantee user to the good of gameExperience.
For example, first threshold is 32MB, second threshold 256;It is more than 32MB in the current occupied capacity of the caching,Or in the case that the current quantity for downloading file simultaneously is more than 256, pause downloading queue pushes download instruction, or reduces downloadingQueue pushes the speed of download instruction, so that the current occupied capacity of the caching is lower than 32MB or current while lower published articleThe quantity of part is less than 256, so that the push download instruction that downloading queue is gentle.
Wherein request end includes client, and in the case where speed of download is too fast, it is excessively high to will lead to bandwidth occupancy, Jin ErkeClient can be caused to postpone (ping value sends data to the time for receiving server feedback data from PC to network server)It gets higher.For the appearance for avoiding this problem, ping value can be inspected periodically whether within the scope of reasonable, if so, keeping originalDownloading object file speed;If it is not, according to circumstances adjusting the speed of downloading object file.
For example, increasing the speed of downloading object file when ping value is lower than 70ms;When ping value is higher than 120ms, dropThe speed of low downloading object file;And when ping value is in 70-120ms, do not change the speed of downloading object file.Such energyIt is enough to realize slowly speed-raising and quick reduction of speed, gradually to sound out the ideal bandwidth upper limit and cope with the high latency of burst in time, thusIt ensure that the good runnability of client.
Optionally, the method also includes:
In the case where determining that caching actual execution value is greater than third threshold value, the file in caching is stored to the magneticDisk.
Wherein the third threshold value includes caching the time of current occupied capacity and the disposable storage file of caching
For example, the data of the file in caching will be pushed away disposably when occupied capacity current in caching is more than 32MBIt is sent in disk, to reduce the expense of the I/O (input/output, Input/Output) of disk.
For another example the data of the file in caching will be by one when the time for disposably storing file in caching is ten secondsSecondary property is pushed in disk, to reduce the expense of the I/O (input/output, Input/Output) of disk.
And in the case where the storage location of the file destination is caching, the file destination in caching directly returnsTo request end, the operation of the I/O (input/output, Input/Output) of disk will not be so triggered, and then can reduce diskI/O (input/output, Input/Output) expense.
Optionally, the method receives the downloading request of multiple request ends using individual process;
File destination or notification message are pushed to multiple request ends by individual process.
The document transmission method can be used as an independent service processes in running background, multiple client need intoWhen row file destination is downloaded, inter-process messages queue (InterProcess Communication Message can be passed throughQueue) push downloading request is receiving downloading request, after completing downloading task, pushes target text by inter-process messages queuePart or notification message are to client.Specifically, the downloading of all file destinations and file destination write operation, be all by individually intoCheng Zhihang, and the read operation of file destination data, are voluntarily completed by each client process.Multiple clients were so both avoidedEnd carries out file destination write-in simultaneously, the problem of to cause write-in to conflict, and can the push of United Dispatching different clients it is nextDownloading request, while ensure that each client reads the speed maximization of data, and then ensure that the good operation of clientPerformance.
Optionally, download engine and download policy are determined according to network environment.
Since outer network environment is intricate, the optimal download mechanism under varying environment is not fully identical.It is different to improveSpeed of download and downloading success rate under network environment, the document transmission method use adaptive more download engine strategies,
More set download engines include: P2P (Peer to Peer, peer-to-peer network), Curl (commandlineUniform resource locator, order line uniform resource locator), BT (BitTorrent, bit stream) and WinINet(Windows Internet, form internet), more set download policies include: HTTP2.0 (HyperText TransferProtocol 2.0, hypertext transfer protocol 2.0), HTTPS (Hyper Text Transfer Protocol overSecure Socket Layer or Hypertext Transfer Protocol Secure, Hyper text transfer security protocol) andHTTP1.1 (HyperText Transfer Protocol 1.1, hypertext transfer protocol 1.1).
Under different network environments, by switching download engine and retry different download policies with determination it is optimal underEngine and download policy are carried, and then improves speed of download and downloading success rate.Pass through each download policy of dynamic monitoring simultaneouslyThe speed of download of error situation and download engine, dynamic deactivate the high download policy of error rate, slow to reduce speed of downloadDownload engine priority, to achieve the purpose that adaptively to download.
In the downloading process for carrying out batch streaming small documents using HTTP2.0, individual process is received by multiple threadsThe downloading for streaming small documents that request end (client) batch is initiated is requested, and the downloading of batch streaming small documents is greatly improvedSpeed, the speed of batch downloading small documents basically reaches the upper limit of download bandwidth after tested.
Standard BT (BitTorrent, bit stream) download technology needs to complete downloading as index by seed file.ToolBody, obtain corresponding seed file, wherein the target complete file that seed file is indexed by fixed size is divided into moreA segment, and SHA1 (Secure Hash Algorithm 1, Secure Hash Algorithm 1) the verification letter of each segment is recorded respectivelyBreath;Then download instruction that downloading request is converted to each segment, requests and verifies to server respectively according to download instructionThe data of each target fragment form complete file destination finally by the target fragment split after verification.
For under the application scenarios of large amount of small documents, seed file clip size must be sufficiently small, otherwise will lead to a large amount ofThe data of redundancy are downloaded.For example, clip size is set as 1024KB, actually only need to download the data of 24KB, then will produceThe waste of raw 1000KB.However, since each segment requires record SHA1 check information, then about for a total sizeWhen the large-scale Resource TOC of 80G is done kind, the seed file of 100M or more will be generated.In addition, even if we select 16KB as pieceDuan great little still has many files to be even less than 16KB or its data and is not aligned by 16KB segment, this still results in oneThe downloading of partial redundance data.
The position view according to the a.txt file of one embodiment of the application in segment is shown in conjunction with Fig. 3, Fig. 3;ItsIn, the size of a.txt file has 32KB altogether, but since it spans 3 segments, is followed successively by segment 1, segment 2 from left to rightWith segment 3, and the size of a.txt file in each segment is 8KB, 16KB and 8KB respectively, and the size of each segment is16KB, so actually needing to download the data of 48KB, so it will cause the wastes of 16KB.It is customized for this problemP2P afterwards can by the inquiry and write-in of FTP client FTP file so that in seed file without have SHA1 check information,And it can support the downloading of irredundant data, can realize the file download being misaligned, such as a.txt fileA.txt can be divided into the downloading of 3 parts, be 8KB, 16KB and 8KB respectively, so during being verified to a.txt file,It only needs to verify the corresponding data of a.txt file, without verifying all segments for including a.txt file;MakeP2P after must customizing is not necessarily to download the data of 48KB completely to download a.txt file;In addition, the P2P after customization can be eachDownloading request increases a priority and supports the dynamic change of the priority of each downloading request.
On the other hand, the application also proposed a kind of document transmission system, and referring to fig. 4, Fig. 4 is shown according to the application one400 structural schematic diagram of document transmission system of embodiment, comprising:
Transmission module 402 is configured as the downloading request for receiving request end to file destination, wherein the downloading request packetInclude the identification information of file destination;
Management module 404 is configured as the identification information according to the file destination, determines the storage position of file destinationIt sets, the storage location of the file destination includes caching, disk or server;
In the case where the storage location of the file destination is caching, during the management module is additionally configured to will to cacheThe file destination be back to request end via transmission module;
In the case where the storage location of the file destination is disk, the management module sends notice to request end and disappearsBreath, the notification message includes storage location information of the file destination in disk;
The storage location of the file destination be server in the case where, the management module, be additionally configured to will underIt carries request and is converted to the download instruction of file destination, the system also includes download module 408, be configured as according under describedIt carries instruction and requests the file destination to server, and the file destination received is pushed into the caching;
Scheduler module 406, is configured as receiving the file destination pushed by the download module, and by the targetFile push extremely caches;
Memory module 412 is configured as to cache in the case where determining that caching actual execution value is greater than third threshold valueIn file store to the disk;
Writing module 410 is configured as judging whether the actual execution value of caching is greater than third threshold value, deposit if so, executingModule is stored up, if it is not, continuing to judge whether the actual execution value of caching is greater than third threshold value.
In the case where the management module determines the different storage locations of file destination, according to the storage position of file destinationIt sets, file destination can be quickly sent to request end.Wherein request end includes client, is especially downloaded in game fileDuring, it not only can guarantee the quick transmission of file destination, while can guarantee good body of the user to game of clientIt tests.
Optionally, download module is configured to request the target text to server according to the download instructionPart, and the file destination received is pushed into the scheduler module;
The scheduler module, is configured as receiving the file destination pushed by the download module, and by the meshFile push is marked to caching.
Download module is pushed to caching from the file destination that server is downloaded by the scheduler module, is not only able to make targetFile is back to request end by caching, and can directly obtain from caching when needing request target file next time, intoAnd the acquisition speed of file destination is improved, to guarantee user to the good experience of game.
Optionally, in the case where the storage location of the file destination is server,
The management module is additionally configured to judge the download instruction whether in downloading queue, if so, the scheduling mouldBlock is configured as priority of the setting download instruction in downloading queue;
If it is not, judging the download instruction whether in scheduling queue, if so, download instruction is pushed to downloading queue;IfIt is no, download instruction is added to scheduling queue.
Management module determine download instruction in the case where downloading queue, by improve the file destination it is corresponding underInstruction is carried in the priority of downloading queue, so that the file destination can be downloaded preferentially.
Download instruction is determined in the case where scheduling queue in management module, by the corresponding download instruction of file destination from tuneDegree queue pushes to downloading queue, and improves the download instruction in the priority of downloading queue, so that the file destination energyEnough preferential downloadings.
Download instruction is determined neither in scheduling queue in management module, and not in the case where downloading queue, by from clothesBusiness device obtains file destination, the download instruction of file destination is pushed to downloading queue, and improve the download instruction and downloadingThe priority of queue, so that the file destination can be downloaded preferentially.
Optionally, first threshold for caching current occupied capacity and being less than the caching is determined in the scheduler moduleIn the case that the quantity for being worth, and currently downloading file in the download module simultaneously is less than second threshold,
The scheduler module, be additionally configured to by scheduling queue the download instruction of highest priority push to downloading teamColumn.
By scheduler module by scheduling queue the download instruction of highest priority push to downloading queue, can be abundantUsing the corresponding download engine of downloading queue, to improve the speed of download of download engine
Optionally, determine that the current occupied capacity of the caching is more than the first threshold of the caching in the scheduler moduleIn the case that the current quantity for downloading file simultaneously is more than second threshold in value or the download module,
The scheduler module is additionally configured to pause downloading queue to download module and pushes download instruction, or reduces downloadingSpeed of the queue to download module push download instruction.
Current occupied capacity is cached more than in the first threshold of the caching or the download module by the way that determination is describedIn the case that the current quantity for downloading file simultaneously is more than second threshold, scheduler module can make to download under the gentle push of queueInstruction is carried, and then guarantees user to the good experience of game.
Optionally, the transmission module receives the downloading request of multiple request ends using individual process, and downloading is requestedPush to the management module;
The transmission module pushes file destination or notification message to multiple request ends by individual process.
The system by the multi-process interaction of transmission module and request end progress single-write and multiple-read can United Dispatching it is differentThe downloading request that client push is come, while ensure that each client reads the speed maximization of data, and then ensure that visitorThe good runnability in family end.
Optionally, the download module is additionally configured to determine download engine and download policy according to network environment.
Since outer network environment is intricate, the optimal download mechanism under varying environment is not fully identical.The downloading mouldBlock, wherein including more set download engines and more set download policies, can be improved difference using adaptive more download engine strategiesSpeed of download and downloading success rate under network environment.
Optionally, the download module 408 is specifically configured to:
Under different network environments, by switching download engine and different download policies is retried, it is optimal with determinationDownload engine and download policy;
The error situation of each download policy of dynamic monitoring deactivates the high download policy of error rate;
The speed of download of each download engine of dynamic monitoring reduces the slow download engine priority of speed of download.
Optionally, the download engine includes: Peer-to-Peer Network P2P, order line uniform resource locator Curl, bit stream BTWith form internet WinINet;
The download policy includes: hypertext transfer protocol HTTP2.0, HTTP1.1 and HTTPS.
Optionally, in the case where download policy is HTTP2.0, file destination is batch streaming small documents,
The transmission module 402 is specifically configured to: receiving the request end batch by multiple threads using individual processThe downloading for the file destination that amount is initiated is requested.
Optionally, in the case where the download engine is BT, the download module 408 is specifically configured to:
Obtain corresponding seed file, wherein seed file is divided by the target complete file that fixed size is indexedAt multiple segments, and the check information of each segment is recorded respectively;
The download instruction that downloading request is converted to each segment is requested simultaneously to server respectively according to the download instructionThe data of each target fragment are verified, the target fragment split after verification is finally formed into the file destination.
One embodiment of the application also provides a kind of calculating equipment, including memory, processor and storage are on a memory simultaneouslyThe computer instruction that can be run on a processor, the processor realize following file transmission as previously described when executing described instructionThe step of method.
One embodiment of the application also provides a kind of computer readable storage medium, is stored with computer instruction, the instructionThe step of document transmission method as previously described is realized when being executed by processor.
A kind of exemplary scheme of above-mentioned computer readable storage medium for the present embodiment.It should be noted that this is depositedThe technical solution of storage media and the technical solution of above-mentioned document transmission method belong to same design, the technical solution of storage mediumThe detail content being not described in detail may refer to the description of the technical solution of above-mentioned document transmission method.
The computer instruction includes computer program code, the computer program code can for source code form,Object identification code form, executable file or certain intermediate forms etc..The computer-readable medium may include: that can carry instituteState any entity or device, recording medium, USB flash disk, mobile hard disk, magnetic disk, CD, the computer storage of computer program codeDevice, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory),Electric carrier signal, telecommunication signal and software distribution medium etc..It should be noted that the computer-readable medium include it is interiorIncrease and decrease appropriate can be carried out according to the requirement made laws in jurisdiction with patent practice by holding, such as in certain jurisdictions of courtsArea does not include electric carrier signal and telecommunication signal according to legislation and patent practice, computer-readable medium.
It should be noted that for the various method embodiments described above, describing for simplicity, therefore, it is stated as a series ofCombination of actions, but those skilled in the art should understand that, the application is not limited by the described action sequence becauseAccording to the application, certain steps can use other sequences or carry out simultaneously.Secondly, those skilled in the art should also knowIt knows, the embodiments described in the specification are all preferred embodiments, and related actions and modules might not all be this ShenIt please be necessary.
In the above-described embodiments, it all emphasizes particularly on different fields to the description of each embodiment, there is no the portion being described in detail in some embodimentPoint, it may refer to the associated description of other embodiments.
The application preferred embodiment disclosed above is only intended to help to illustrate the application.There is no detailed for alternative embodimentAll details are described, are not limited the invention to the specific embodiments described.Obviously, according to the content of this specification,It can make many modifications and variations.These embodiments are chosen and specifically described to this specification, is in order to preferably explain the applicationPrinciple and practical application, so that skilled artisan be enable to better understand and utilize the application.The application is onlyIt is limited by claims and its full scope and equivalent.

Claims (25)

CN201910169498.7A2019-03-062019-03-06File transmission system and method, computing device and storage mediumActiveCN109756581B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201910169498.7ACN109756581B (en)2019-03-062019-03-06File transmission system and method, computing device and storage medium

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201910169498.7ACN109756581B (en)2019-03-062019-03-06File transmission system and method, computing device and storage medium

Publications (2)

Publication NumberPublication Date
CN109756581Atrue CN109756581A (en)2019-05-14
CN109756581B CN109756581B (en)2021-11-09

Family

ID=66408241

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201910169498.7AActiveCN109756581B (en)2019-03-062019-03-06File transmission system and method, computing device and storage medium

Country Status (1)

CountryLink
CN (1)CN109756581B (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN110784520A (en)*2019-09-302020-02-11北京字节跳动网络技术有限公司File downloading method and device and electronic equipment
CN111355791A (en)*2020-02-252020-06-30腾讯科技(深圳)有限公司File transmission method and device, computer equipment and storage medium
CN112134781A (en)*2019-06-252020-12-25广州慧睿思通信息科技有限公司Mail data processing method, device, computer equipment and storage medium
CN112527750A (en)*2020-12-152021-03-19中孚安全技术有限公司Domestic operating system file storage method and system
CN112749398A (en)*2019-10-312021-05-04上海哔哩哔哩科技有限公司Data transmission channel control method and system
CN113992651A (en)*2021-09-242022-01-28深圳市有方科技股份有限公司Downloading method based on File Transfer Protocol (FTP) and related product
CN114358906A (en)*2022-01-052022-04-15河北航天信息技术有限公司Financial data downloading method and device, server and storage medium
CN114422509A (en)*2022-04-012022-04-29天津联想协同科技有限公司Automatic file backup method and device, network disk and storage medium
CN114666319A (en)*2022-03-022022-06-24北京百度网讯科技有限公司Data downloading method and device, electronic equipment and readable storage medium
CN114697316A (en)*2022-04-242022-07-01平安科技(深圳)有限公司Batch downloading method, device and equipment of data and computer readable medium
CN115344806A (en)*2022-08-182022-11-15中国建设银行股份有限公司Picture resource processing method and device
CN115878676A (en)*2023-02-082023-03-31成都数联云算科技有限公司Method, device, equipment and medium for previewing file
CN116546008A (en)*2023-06-162023-08-04中国银行股份有限公司 A file batch processing method, device, system and medium
WO2025067187A1 (en)*2023-09-262025-04-03北京字跳网络技术有限公司File downloading method and apparatus, electronic device, and storage medium

Citations (11)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN1547714A (en)*2001-08-032004-11-17易斯龙系统公司System and method for providing metadata for information tracking in a distributed file system of storage devices
CN101719936A (en)*2009-12-092010-06-02成都市华为赛门铁克科技有限公司Method, device and cache system for providing file downloading service
CN102779128A (en)*2011-05-102012-11-14北京磊友信息科技有限公司Method and device for offline running of HTML5 (hypertext markup language 5) application program in mobile terminal
CN102970358A (en)*2012-11-082013-03-13百度在线网络技术(北京)有限公司Method and device for controlling local cache of mobile client in network disc
CN103248707A (en)*2013-05-222013-08-14北京奇虎科技有限公司File access method, system and equipment
CN103780676A (en)*2013-12-122014-05-07北京奇虎科技有限公司File transmission method, device and system
CN103902696A (en)*2014-03-282014-07-02广州华多网络科技有限公司Method and device for loading resource files
CN104424118A (en)*2013-08-232015-03-18深圳市腾讯计算机系统有限公司Hotspot file self-adaption copy method and system
CN104980494A (en)*2015-05-142015-10-14大连理工大学 A cloud storage download sharing platform and method with local cache
CN107623709A (en)*2016-07-152018-01-23北京金山云网络技术有限公司A kind of document down loading method and device
CN108595188A (en)*2018-03-302018-09-28北京五八信息技术有限公司A kind of acquisition methods of application file, device, equipment and storage medium

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN1547714A (en)*2001-08-032004-11-17易斯龙系统公司System and method for providing metadata for information tracking in a distributed file system of storage devices
CN101719936A (en)*2009-12-092010-06-02成都市华为赛门铁克科技有限公司Method, device and cache system for providing file downloading service
CN102779128A (en)*2011-05-102012-11-14北京磊友信息科技有限公司Method and device for offline running of HTML5 (hypertext markup language 5) application program in mobile terminal
CN102970358A (en)*2012-11-082013-03-13百度在线网络技术(北京)有限公司Method and device for controlling local cache of mobile client in network disc
CN103248707A (en)*2013-05-222013-08-14北京奇虎科技有限公司File access method, system and equipment
CN104424118A (en)*2013-08-232015-03-18深圳市腾讯计算机系统有限公司Hotspot file self-adaption copy method and system
CN103780676A (en)*2013-12-122014-05-07北京奇虎科技有限公司File transmission method, device and system
CN103902696A (en)*2014-03-282014-07-02广州华多网络科技有限公司Method and device for loading resource files
CN104980494A (en)*2015-05-142015-10-14大连理工大学 A cloud storage download sharing platform and method with local cache
CN107623709A (en)*2016-07-152018-01-23北京金山云网络技术有限公司A kind of document down loading method and device
CN108595188A (en)*2018-03-302018-09-28北京五八信息技术有限公司A kind of acquisition methods of application file, device, equipment and storage medium

Cited By (20)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN112134781A (en)*2019-06-252020-12-25广州慧睿思通信息科技有限公司Mail data processing method, device, computer equipment and storage medium
CN110784520A (en)*2019-09-302020-02-11北京字节跳动网络技术有限公司File downloading method and device and electronic equipment
CN112749398B (en)*2019-10-312022-10-25上海哔哩哔哩科技有限公司Data transmission channel control method and system
CN112749398A (en)*2019-10-312021-05-04上海哔哩哔哩科技有限公司Data transmission channel control method and system
CN111355791A (en)*2020-02-252020-06-30腾讯科技(深圳)有限公司File transmission method and device, computer equipment and storage medium
CN112527750A (en)*2020-12-152021-03-19中孚安全技术有限公司Domestic operating system file storage method and system
CN113992651A (en)*2021-09-242022-01-28深圳市有方科技股份有限公司Downloading method based on File Transfer Protocol (FTP) and related product
CN113992651B (en)*2021-09-242024-05-14深圳市有方科技股份有限公司Downloading method based on File Transfer Protocol (FTP) and related products
CN114358906A (en)*2022-01-052022-04-15河北航天信息技术有限公司Financial data downloading method and device, server and storage medium
CN114666319A (en)*2022-03-022022-06-24北京百度网讯科技有限公司Data downloading method and device, electronic equipment and readable storage medium
CN114666319B (en)*2022-03-022024-03-22北京百度网讯科技有限公司 Data download method, device, electronic device and readable storage medium
CN114422509B (en)*2022-04-012022-07-26天津联想协同科技有限公司Automatic file backup method and device, network disk and storage medium
CN114422509A (en)*2022-04-012022-04-29天津联想协同科技有限公司Automatic file backup method and device, network disk and storage medium
CN114697316B (en)*2022-04-242024-03-12平安科技(深圳)有限公司Batch downloading method, device and equipment of data and computer readable medium
CN114697316A (en)*2022-04-242022-07-01平安科技(深圳)有限公司Batch downloading method, device and equipment of data and computer readable medium
CN115344806A (en)*2022-08-182022-11-15中国建设银行股份有限公司Picture resource processing method and device
CN115878676A (en)*2023-02-082023-03-31成都数联云算科技有限公司Method, device, equipment and medium for previewing file
CN115878676B (en)*2023-02-082023-05-05成都数联云算科技有限公司Method, device, equipment and medium for previewing file
CN116546008A (en)*2023-06-162023-08-04中国银行股份有限公司 A file batch processing method, device, system and medium
WO2025067187A1 (en)*2023-09-262025-04-03北京字跳网络技术有限公司File downloading method and apparatus, electronic device, and storage medium

Also Published As

Publication numberPublication date
CN109756581B (en)2021-11-09

Similar Documents

PublicationPublication DateTitle
CN109756581A (en)A kind of document transmission system and method, a kind of calculating equipment and storage medium
CN101668046B (en)Resource caching method, device and system thereof
CN102396207B (en)The sequencing transmission of digital content items
CN102055650B (en) Load balancing method and system and management server
US8068512B2 (en)Efficient utilization of cache servers in mobile communication system
JP6109202B2 (en) Collaborative loading of web pages based on shared meta information
KR101359081B1 (en)Performance aware peer-to-peer content-on-demand
US20110131278A1 (en)Systems and methods for peer-to-peer bandwidth allocation
CN106330997B (en) A method and system for content distribution of mobile terminal applications
KR101589801B1 (en)Peer-to-peer data migration
CN110430274A (en)A kind of document down loading method and system based on cloud storage
US8250171B2 (en)Content delivery apparatus, content delivery method, and content delivery program
WO2012024241A2 (en)Apparatus and method of acquiring or distributing content
CN1605072A (en) System and method for downloading data using an agent
JP2008250767A (en) Distributed storage system
US20240106890A1 (en)Peer-to-peer network scheduling method and system
CN109688229A (en)Session keeps system under a kind of load balancing cluster
CN103108009A (en)Method and device for file sharing based on off-line space
EP2141601A1 (en)Content distribution device, content distribution method, and content distribution program
CN112052023A (en)Intelligent terminal upgrading strategy management method
US20110055394A1 (en)Network assisted mobile centric peer selection method
Oberender et al.Enabling mobile peer-to-peer networking
KR20090029113A (en) Block selection method in file parallel download, file parallel download method using the same, and recording medium recording a program for implementing the same
CN112363676A (en)Control method and system based on low access delay distributed storage system
CN1592258A (en) Network system and method with automatic client configuration

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant
CP03Change of name, title or address

Address after:519000 Room 102, 202, 302 and 402, No. 325, Qiandao Ring Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province, Room 102 and 202, No. 327 and Room 302, No. 329

Patentee after:Zhuhai Jinshan Digital Network Technology Co.,Ltd.

Address before:Room 102, Room 202, Room 302, Room 402, Room 327, Room 102, Room 202, Room 329, Room 302, No. 325, Qiandao Ring Road, Tangjiawan Town, High-tech Zone

Patentee before:ZHUHAI KINGSOFT ONLINE GAME TECHNOLOGY Co.,Ltd.

CP03Change of name, title or address

[8]ページ先頭

©2009-2025 Movatter.jp