CN113824760B - File concurrency block uploading method and device, electronic equipment and storage medium - Google Patents

File concurrency block uploading method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113824760B
CN113824760B CN202110886685.4A CN202110886685A CN113824760B CN 113824760 B CN113824760 B CN 113824760B CN 202110886685 A CN202110886685 A CN 202110886685A CN 113824760 B CN113824760 B CN 113824760B
Authority
CN
China
Prior art keywords
uploading
file
uploaded
threads
concurrent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110886685.4A
Other languages
Chinese (zh)
Other versions
CN113824760A (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.)
China Bond Jinke Information Technology Co ltd
Tsinghua University
Original Assignee
China Bond Jinke Information Technology Co ltd
Tsinghua University
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 China Bond Jinke Information Technology Co ltd, Tsinghua University filed Critical China Bond Jinke Information Technology Co ltd
Priority to CN202110886685.4A priority Critical patent/CN113824760B/en
Publication of CN113824760A publication Critical patent/CN113824760A/en
Application granted granted Critical
Publication of CN113824760B publication Critical patent/CN113824760B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention provides a file concurrency block uploading method, a device, electronic equipment and a storage medium, wherein the method comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; acquiring file block information to be uploaded of a file to be uploaded according to a file identifier in the meta information; the file block information to be uploaded comprises the initial offset of the file block to be uploaded and the number of bytes of the file block which are not completely transmitted; calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to a client; receiving file block data sent by an uploading thread of a client according to file block information to be uploaded, and updating historical uploading records according to the file block data; and repeatedly executing the process until all the file blocks to be uploaded are uploaded. According to the file concurrency block uploading method, device, electronic equipment and storage medium provided by the embodiment of the invention, the file concurrency high-efficiency uploading is realized through the real-time reasonable distribution of the file uploading threads.

Description

File concurrency block uploading method and device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of data transmission technologies, and in particular, to a method and apparatus for uploading concurrent blocks of a file, an electronic device, and a storage medium.
Background
With the development of computer software and hardware technology in recent years, the informatization level of each industry is greatly improved, a large number of data files are created, and each file stores a large amount of data, so how to efficiently transmit the data dispersed on each terminal to a server becomes a worth discussing problem. Due to the large demand for file transmission, a scenario that a plurality of clients transmit large files concurrently under the condition of limited bandwidth is often encountered.
The method generally used in the industry mainly comprises the steps of carrying out block concurrent transmission on large files, however, the method cannot work well under the conditions of small transmission bandwidth and jitter of the transmission bandwidth, the situation that the transmission thread of some files preempts most of server bandwidth resources to cause that the transmission speed of other files is particularly slow or even the transmission of the network is failed due to overtime is frequently caused, and the whole file needs to be retransmitted once the transmission is interrupted due to faults in the transmission process of the conventional transmission method.
Disclosure of Invention
In order to solve the problems in the prior art, the invention provides a method, a device, electronic equipment and a storage medium for uploading concurrent blocks of files.
The invention provides a file concurrency block uploading method, which is applied to a server and comprises the following steps: the receiving flow of the uploading request comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
the file block information to be uploaded is obtained by: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
and (3) uploading a thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
and (3) uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
the first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
According to the file concurrency block uploading method provided by the invention, the historical uploading record is updated according to the file block data, and the method comprises the following steps: checking the completely uploaded file blocks through a cyclic redundancy check code; if the verification is successful, recording the information that the corresponding file block has completed uploading; if the verification is unsuccessful, discarding the corresponding file block; and/or, when the uploading interrupt of the file block occurs, saving the data information which is partially uploaded, and recording the number of bytes which are uploaded.
According to the file concurrency block uploading method provided by the invention, the calculation of the allowable concurrency uploading thread number comprises the following steps: acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client; subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number; calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client; if the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client; if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number; and if the number of the allowed concurrent uploading threads is smaller than 1, adjusting the number of the allowed concurrent uploading threads to 1.
According to the file concurrency block uploading method provided by the invention, the method further comprises the steps of calculating a second product of a preset second proportion and a memory for file transmission, and taking the ratio of the second product to the maximum concurrency number of the system as the block size; and partitioning the file to be uploaded according to the partition size.
The invention also provides a file concurrency block uploading method, which is applied to the client and comprises the following steps: the uploading request sending flow comprises the following steps: reading meta information of a file to be uploaded; wherein the meta information includes a file identification; file block to be uploaded and uploading thread information receiving flow: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded; the second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
The invention also provides a file concurrency block uploading device, which is applied to a server and comprises:
an upload request receiving module, configured to: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
the file block information obtaining module to be uploaded is used for: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
an uploading thread allocation module, configured to: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
the uploading data processing module is used for: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
a first loop execution module for: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
The invention also provides an electronic device comprising a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the processor realizes the steps of the file concurrency block uploading method according to any one of the above when executing the program.
The present invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of a file concurrency blocking upload method as described in any one of the above.
According to the file concurrency block uploading method, device, electronic equipment and storage medium, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is realized, the quick and efficient uploading process of the file is realized based on the method, the overall uploading efficiency of the file is improved, and resource conflict is avoided; meanwhile, the breakpoint continuous transmission of the file is realized by uploading based on the existing length of the file block which is not completely transmitted.
Drawings
In order to more clearly illustrate the invention or the technical solutions of the prior art, the following description will briefly explain the drawings used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are some embodiments of the invention, and other drawings can be obtained according to the drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic flow chart of a method for uploading concurrent blocks of a file according to the present invention;
FIG. 2 is a second flowchart of a method for concurrent block upload of files according to the present invention;
FIG. 3 is a schematic flow chart of a method for uploading concurrent blocks of files applied to a server;
FIG. 4 is a schematic flow chart of a concurrent block uploading method of a file applied to a client;
FIG. 5 is a schematic diagram of a file concurrency block uploading device provided by the invention;
fig. 6 is a schematic structural diagram of an electronic device provided by the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is apparent that the described embodiments are some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
Fig. 1 is a schematic flow chart of a method for uploading concurrent blocks of a file, as shown in fig. 1, where the method is applied to a server, and includes:
S110, an uploading request receiving flow: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
s120, a file block information acquisition process to be uploaded: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
s130, uploading thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
s140, uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
s150, a first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
Meta information indicates system data for describing characteristics of one file, such as access rights, file size, file owner, distribution information of file data, etc., which must be obtained when operating one file in order to locate the position of the file and obtain the contents or related attributes of the file.
The client reads the file to be uploaded from the local file system, acquires meta-information of the file, and specifically may include a name of the file (hereinafter referred to as a file name), an identifier set by a user for the file (hereinafter referred to as a file identifier), and a size of the file is sent to the server through an HTTP protocol.
After receiving the HTTP request, the server reads the file name, file identifier, and file size from it. The server uses a file identifier to inquire whether the file is uploaded from a history transmission record file, if the history transmission record does not contain the file, the file is regarded as first transmission, then the file block size set in a configuration file by a user is read, then the file size is divided by the file block size, the number of file blocks needing to be transmitted together and the start-stop offset of each file block are calculated, and the information is written into the history transmission record; if the file is contained in the history transmission record file, the file block size, the initial offset of each file block, the already transmitted length of each file block and whether each file block is transmitted or not are directly read from the history transmission record file.
The file block offset refers to the number of bytes for moving the file to be uploaded forwards or backwards from a designated position, and the file block offset is used for describing that the file block which is completed to be transmitted is positioned at a specific position of the file to be uploaded, namely, describing a blocking mode of the file to be uploaded; meanwhile, the transmission progress of a certain file block which is not transmitted is described by the number of bytes transmitted.
The server calculates the number N of the allowable concurrent uploading threads according to the current server load, and simultaneously sends a calculation result and file block information to be uploaded to the client; the client starts corresponding uploading threads according to the received allowable concurrent uploading thread number N, and performs a parallel uploading process on the file blocks depending on the started threads; the server receives the file block data from the client and updates the history to upload and record according to the actual file block receiving condition.
Taking the historical uploading record as a judgment basis, and repeatedly executing the uploading process of the file when the file to be uploaded is not uploaded; and stopping the file uploading process when the file to be uploaded is uploaded.
According to the file concurrency block uploading method, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is realized, the quick and efficient uploading process of the file is realized based on the method, the overall uploading efficiency of the file is improved, and resource conflict is avoided; uploading is carried out based on the existing length of the file block which is not completely transmitted, so that breakpoint continuous transmission of the file is realized; meanwhile, the historical uploading record of the file block is updated in real time, so that the reliability of the file concurrent block uploading process is ensured, and the problem of error transmission and missing transmission is avoided.
According to the method for uploading concurrent blocks of a file provided by the invention, in the invention, the method for uploading records according to the file block data update history comprises the following steps: checking the completely uploaded file blocks through a cyclic redundancy check code; if the verification is successful, recording the information that the corresponding file block has completed uploading; if the verification is unsuccessful, discarding the corresponding file block; and/or, when the uploading interrupt of the file block occurs, saving the data information which is partially uploaded, and recording the number of bytes which are uploaded.
And compressing the data by using a data compression mode appointed by the server, calculating an MD5 check code of the data, and then using a POST request in an HTTP protocol, taking the MD5 check code and the length of the data as request heads, and taking the part of the file block which is not transmitted as a request body, and transmitting the request body to the server.
After receiving the file block transmission request, the server reads the MD5 check code, the data length and the part of the file block which is not transmitted. If the length reaches the length of the appointed file block, calculating an MD5 check code of the data, if the MD5 check code is consistent with the MD5 check code transmitted by the user, updating the length of the corresponding file block of the appointed file in the history transmission record as the transmission is correct, and identifying the corresponding file block as the transmission is completed, otherwise, discarding the transmission result as the data transmission is incorrect, deleting the uploaded part of the appointed file block, and updating the length of the corresponding file block of the appointed file in the history transmission record as 0. After the server processes the request, the number of threads which are being concurrently transmitted by all clients of the current server is reduced by one.
The server reads the uploaded part of the designated file block, and the data transmitted at this time is spliced, if the total length does not reach the length of the appointed file block, the file block is not transmitted yet, the file block is directly stored, the length of the corresponding file block of the designated file in the history transmission record is updated, and the record is uploaded according to the updated history, so that the file can be continuously uploaded from the uploading interruption position after the system is recovered to be normal.
According to the file concurrency block uploading method provided by the invention, the accuracy of the uploaded file blocks is judged through the cyclic redundancy check code, and the historical uploading record is updated after the judgment is finished, so that the reliability of file uploading is ensured; meanwhile, when the uploading interruption of the file block occurs, the data information which is partially uploaded is stored, and the history uploading record is updated, so that the file uploading can be continued from the uploading interruption position after the system is recovered to be normal, and the effectiveness of the file uploading is ensured.
According to the file concurrency block uploading method provided by the invention, the calculation of the allowable concurrency uploading thread number comprises the following steps: acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client; subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number; calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client; if the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client; if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number; and if the number of the allowed concurrent uploading threads is smaller than 1, adjusting the number of the allowed concurrent uploading threads to 1.
The server reads a configuration file provided by a user and acquires the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client; subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number; it should be noted that, the sum of the number of concurrent threads includes both the thread being uploaded and the thread being downloaded; the server multiplies the maximum concurrency number of the system by a preset first proportion to obtain a first product, wherein the first proportion is a preset value, the first product can be preset according to the requirement, the ratio of the first product to the number of files being uploaded and downloaded by the current client is used as the number of allowable concurrent uploading threads of the current client, and the first product can be 0.9 for example.
The number of the allowable concurrent uploading threads of the current client obtained by the calculation is only a theoretical value, after the allowable concurrent uploading threads are obtained by the calculation, a judgment step is needed to be carried out, and the final allowable concurrent uploading threads are obtained based on the judgment result, wherein the specific judgment process is as follows:
(1) if the number of the allowed concurrent uploading threads obtained through calculation is larger than the maximum allowed concurrent threads of the client, the fact that the current file to be uploaded has the requirement for the uploading threads exceeding the maximum capability of the current client is indicated, and the allowed concurrent uploading threads are adjusted to the maximum allowed concurrent threads of the client; (2) if the number of the allowable concurrent uploading threads obtained through calculation is larger than the current available thread number, the fact that the requirement of the current file to be uploaded on the uploading threads exceeds the maximum capability of the current system is indicated, and the allowable concurrent uploading thread number is adjusted to be the current available thread number; (3) if the number of the allowable concurrent uploading threads obtained through calculation is smaller than 1, the fact that the current file to be uploaded has smaller requirements for the uploading threads is indicated, but in order to ensure that the uploading process is normally carried out, the allowable concurrent uploading threads are adjusted to be 1.
According to the file concurrency block uploading method provided by the invention, the current occupied thread number of other clients is subtracted by utilizing the maximum concurrency thread number of the system, the range of the current available thread number is locked, and meanwhile, the number of actually used threads is flexibly adjusted according to actual requirements by presetting a coefficient of a first proportion, so that the balanced utilization of uploading threads is realized; meanwhile, the number of the allowed concurrent uploading threads obtained through calculation is respectively judged with the maximum allowed concurrent threads of the client, the current available threads and the like, the final allowed concurrent uploading threads are obtained based on the judging result, the calculated allowed concurrent uploading threads can be better matched with the current actual uploading capacity of the server or the client based on the judging step, and efficient transmission of the file to be uploaded is ensured on the premise that the server and the client exert the maximum uploading capacity.
According to the file concurrency block uploading method provided by the invention, the method further comprises the following steps: calculating a second product of a preset second proportion and a memory for file transmission, and taking the ratio of the second product to the maximum concurrency number of the system as the block size; and partitioning the file to be uploaded according to the partition size.
It should be noted that, the memory of the server is a fixed value, and when the system is running, the memory of the server is divided into two parts: the occupied memory and the residual memory are too large, so that the running speed of the system is low, and the utilization rate of the server is lower. In the invention, the memory used for file transmission can be the residual memory or can be a set value, the preset second proportion is multiplied by the memory used for file transmission to obtain a second product, meanwhile, the specific partitioning standard of the file block is used as the ratio of the second product to the maximum concurrence number of the system, the file to be uploaded is partitioned, and the value of the preset second proportion can be preset according to actual needs and is not a fixed value. The preset second ratio may take a value of 0.9.
According to the file concurrency block uploading method provided by the invention, the memory uploaded by the final file is regulated and controlled by utilizing the preset second proportion, so that the balanced processing on the two aspects of the running speed of the server and the utilization rate of the server is realized, and the running capacity of the server is exerted to the greatest extent on the premise of meeting the file uploading speed; meanwhile, the adjustability of the second proportion is preset, flexible adjustment of the running capability of the server is achieved, and the difference requirement of priority of file block uploading speed or priority of file block uploading quantity can be met.
Fig. 2 is a second flowchart of a method for uploading concurrent blocks of a file according to the present invention, as shown in fig. 2, where the method is applied to a client, and includes:
s210, an uploading request sending flow: reading meta information of a file to be uploaded; wherein the meta information includes a file identification;
s220, a file block to be uploaded and an uploading thread information receiving process: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
s230, data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded;
s240, a second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
It should be noted that, the client reads meta information of the file to be uploaded and sends the meta information to the server, the server uses a file identifier in the meta information as an acquisition basis to obtain file block information to be uploaded of the file to be uploaded, the file block information to be uploaded includes a start offset of a file block to be uploaded and a number of bytes transmitted of the file block which is not completely transmitted, and a blocking mode of the file to be uploaded is described by using the file block offset; meanwhile, the transmission progress of a certain file block which is not transmitted is described by the number of bytes transmitted.
Meanwhile, the server calculates the allowable concurrent uploading thread number based on the load of the server, and sends the obtained file block information to be uploaded and the allowable concurrent uploading thread number to the client, the client starts the corresponding number of uploading threads according to the allowable concurrent uploading thread number, and meanwhile, the file block information to be uploaded is used as the basis of file uploading, and the uploading threads are used as transmission paths to send file block data to the server.
Taking the historical uploading record as a judgment basis, and repeatedly executing the uploading process of the file when the file to be uploaded is not uploaded; and stopping the file uploading process when the file to be uploaded is uploaded.
According to the file concurrency block uploading method, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is realized, the quick and efficient uploading process of the file is realized based on the method, the overall uploading efficiency of the file is improved, and resource conflict is avoided; uploading is carried out based on the existing length of the file block which is not completely transmitted, so that breakpoint continuous transmission of the file is realized; meanwhile, the historical uploading record of the file block is updated in real time, so that the reliability of the file concurrent block uploading process is ensured, and the problem of error transmission and missing transmission is avoided.
Fig. 3 is a flow chart of a method for uploading concurrent blocks of a file applied to a server, which is provided by the invention, as shown in fig. 3, and the method includes:
step1, starting a process, searching a history transmission record of a corresponding file, and searching the history transmission record of the corresponding file by a server based on a file identifier;
step2, calculating a transmission plan and a concurrent thread number, wherein the transmission plan comprises a compression mode of a file block and calculation of a cyclic redundancy check code, and the concurrent thread number represents the allowable concurrent uploading thread number;
step3, receiving file block data, and judging whether the current file block is transmitted completely;
step4, if the current file block is not transmitted, updating the byte number transmitted by the current file block; and if the current file block is transmitted completely, verifying the check code, and updating the file block data and the meta information based on the verification result.
Step5, ending the flow.
According to the file concurrency block uploading method, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is achieved, the rapid and efficient uploading process of the file is achieved based on the method, the overall uploading efficiency of the file is improved, and resource conflict is avoided.
Fig. 4 is a flow chart of a method for file concurrency block upload applied to a client, as shown in fig. 4, provided by the invention, the method includes:
step1, starting a process, and transmitting file meta information to a server, wherein the file meta information comprises file identifications used for distinguishing different files;
step2, acquiring a transmission plan and a concurrent thread number, wherein the transmission plan comprises a compression mode of a file block and calculation of a cyclic redundancy check code, and the concurrent thread number represents the allowable concurrent uploading thread number;
step3, starting a plurality of transmission threads, distributing a file block uploading task for each thread, wherein each uploading task comprises compressing a file block, calculating a check code, and uploading the compressed file block and the obtained check code;
step4, judging whether all files are transmitted completely, and if not, executing Step2 and Step3 again; if so, the process ends.
According to the file concurrency block uploading method, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is achieved, the rapid and efficient uploading process of the file is achieved based on the method, the overall uploading efficiency of the file is improved, and resource conflict is avoided.
Fig. 5 is a schematic structural diagram of a file concurrency block uploading device provided by the present invention, where the device is applied to a server, as shown in fig. 5, and the device includes: an upload request receiving module 510, a file block to be uploaded information obtaining module 520, an upload thread allocating module 530, an upload data processing module 540 and a first loop executing module 550, wherein:
an upload request receiving module 510, configured to: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
the file block information to be uploaded acquisition module 520 is configured to: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
an upload thread allocation module 530 for: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
an upload data processing module 540 for: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
A first loop execution module 550 for: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
According to the file concurrency block uploading device, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is realized, the quick and efficient uploading process of the file is realized based on the concurrent uploading process, the overall uploading efficiency of the file is improved, and resource conflict is avoided; uploading is carried out based on the existing length of the file block which is not completely transmitted, so that breakpoint continuous transmission of the file is realized; meanwhile, the historical uploading record of the file block is updated in real time, so that the reliability of the file concurrent block uploading process is ensured, and the problem of error transmission and missing transmission is avoided.
According to the file concurrency block uploading device provided by the invention, when the uploading data processing module 540 is used for updating historical uploading records according to the file block data, the uploading data processing module is specifically used for: checking the completely uploaded file blocks through a cyclic redundancy check code; if the verification is successful, recording the information that the corresponding file block has completed uploading; if the verification is unsuccessful, discarding the corresponding file block; and/or, when the uploading interrupt of the file block occurs, saving the data information which is partially uploaded, and recording the number of bytes which are uploaded.
The file concurrency block uploading device provided by the invention judges the accuracy of the uploaded file blocks through the cyclic redundancy check code, updates the historical uploading record after the judgment is finished, and ensures the reliability of file uploading based on the judgment; meanwhile, when the uploading of the file blocks is interrupted, the data information which is partially uploaded is stored, and the history uploading record is updated, so that the file uploading can be continued from the uploading interruption position after the system is recovered to be normal, the uploading process has a breakpoint continuous uploading function, and the effectiveness of the file uploading is ensured.
According to the file concurrency block uploading device provided by the invention, the uploading thread allocation module 530 is specifically configured to: acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client; subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number; calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client; if the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client; if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number; and if the number of the allowed concurrent uploading threads is smaller than 1, adjusting the number of the allowed concurrent uploading threads to 1.
The file concurrency block uploading device provided by the invention locks the range of the current available thread number by subtracting the current occupied thread number of other clients from the maximum concurrency thread number of the system, and flexibly adjusts the actually used thread number according to actual requirements by presetting a coefficient of a first proportion so as to realize balanced utilization of uploading threads; meanwhile, the number of the allowed concurrent uploading threads obtained through calculation is respectively judged with the maximum allowed concurrent threads of the client, the current available threads and the like, the final allowed concurrent uploading threads are obtained based on the judging result, the calculated allowed concurrent uploading threads can be better matched with the current actual uploading capacity of the server or the client based on the judging step, and efficient transmission of the file to be uploaded is ensured on the premise that the server and the client exert the maximum uploading capacity.
According to the file concurrency block uploading device provided by the invention, the device 500 is further used for calculating a second product of a preset second proportion and a memory for file transmission, and taking the ratio of the second product to the maximum concurrency number of the system as the block size; and partitioning the file to be uploaded according to the partition size.
According to the file concurrency block uploading device, the utilization memory of final file uploading is regulated and controlled by utilizing the preset second proportion, so that balanced processing on the two aspects of the running speed of the server and the utilization rate of the server is realized, and the running capacity of the server is exerted to the greatest extent on the premise that the file uploading speed is met; meanwhile, the adjustability of the second proportion is preset, flexible adjustment of the running capability of the server is achieved, and the difference requirements of the priority of the uploading speed of the file blocks or the priority of the uploading quantity of the file blocks are met respectively.
The invention also provides a file concurrency block uploading device, which is applied to the client, and comprises: the system comprises an uploading request sending module, a file block to be uploaded, an uploading thread information receiving module, a data uploading module and a second cycle executing module, wherein:
an upload request sending module, configured to: reading meta information of a file to be uploaded; wherein the meta information includes a file identification;
the file block to be uploaded and the uploading thread information receiving module are used for: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
The data uploading module is used for: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded;
a second loop execution module for: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
According to the file concurrency block uploading device, the server calculates the allowable concurrency uploading thread number, meanwhile, the block processing is carried out on the file to be uploaded, the specific object for concurrency uploading is confirmed, the client finally starts a plurality of uploading threads based on the allowable concurrency uploading thread number, the concurrency uploading process of a plurality of file blocks of the file to be uploaded is realized, the quick and efficient uploading process of the file is realized based on the concurrent uploading process, the overall uploading efficiency of the file is improved, and resource conflict is avoided; uploading is carried out based on the existing length of the file block which is not completely transmitted, so that breakpoint continuous transmission of the file is realized; meanwhile, the historical uploading record of the file block is updated in real time, so that the reliability of the file concurrent block uploading process is ensured, and the problem of error transmission and missing transmission is avoided.
Fig. 6 illustrates a physical schematic diagram of an electronic device, as shown in fig. 6, which may include: processor 610, communication interface (Communications Interface) 620, memory 630, and communication bus 640, wherein processor 610, communication interface 620, and memory 630 communicate with each other via communication bus 640. The processor 610 may invoke logic instructions in the memory 630 to perform a file concurrent block upload method comprising: the receiving flow of the uploading request comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification; the file block information to be uploaded is obtained by: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) uploading a thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client; and (3) uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data; the first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
Or the file concurrency block uploading method comprises the following steps: the uploading request sending flow comprises the following steps: reading meta information of a file to be uploaded; wherein the meta information includes a file identification; file block to be uploaded and uploading thread information receiving flow: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded; the second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
Further, the logic instructions in the memory 630 may be implemented in the form of software functional units and stored in a computer-readable storage medium when sold or used as a stand-alone product. Based on this understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
In another aspect, the present invention also provides a computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, are capable of performing a method of file concurrency block upload provided by the above methods, the method of file concurrency block upload comprising: the receiving flow of the uploading request comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification; the file block information to be uploaded is obtained by: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) uploading a thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client; and (3) uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data; the first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
Or the file concurrency block uploading method comprises the following steps: the uploading request sending flow comprises the following steps: reading meta information of a file to be uploaded; wherein the meta information includes a file identification; file block to be uploaded and uploading thread information receiving flow: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded; the second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
In still another aspect, the present invention further provides a non-transitory computer readable storage medium having stored thereon a computer program, which when executed by a processor, is implemented to perform the above-provided file concurrency blocking uploading method, the file concurrency blocking uploading method including: the receiving flow of the uploading request comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification; the file block information to be uploaded is obtained by: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) uploading a thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client; and (3) uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data; the first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
Or the file concurrency block uploading method comprises the following steps: the uploading request sending flow comprises the following steps: reading meta information of a file to be uploaded; wherein the meta information includes a file identification; file block to be uploaded and uploading thread information receiving flow: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted; and (3) data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded; the second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
The apparatus embodiments described above are merely illustrative, wherein the elements illustrated as separate elements may or may not be physically separate, and the elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
From the above description of the embodiments, it will be apparent to those skilled in the art that the embodiments may be implemented by means of software plus necessary general hardware platforms, or of course may be implemented by means of hardware. Based on this understanding, the foregoing technical solution may be embodied essentially or in a part contributing to the prior art in the form of a software product, which may be stored in a computer readable storage medium, such as ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method described in the respective embodiments or some parts of the embodiments.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (7)

1. A method for file concurrency block uploading, the method being applied to a server, comprising:
the receiving flow of the uploading request comprises the following steps: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
the file block information to be uploaded is obtained by: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
and (3) uploading a thread allocation flow: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
wherein the calculating the number of allowed concurrent uploading threads includes:
acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client;
subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number;
calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client;
If the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client;
if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number;
if the number of the allowed concurrent uploading threads is smaller than 1, the number of the allowed concurrent uploading threads is adjusted to be 1;
and (3) uploading a data processing flow: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
the first loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
2. The method for uploading concurrent blocks of a file according to claim 1, wherein updating the history upload record according to the file block data comprises:
checking the completely uploaded file blocks through a cyclic redundancy check code; if the verification is successful, recording the information that the corresponding file block has completed uploading; if the verification is unsuccessful, discarding the corresponding file block;
And/or, when the uploading interrupt of the file block occurs, saving the data information which is partially uploaded, and recording the number of bytes which are uploaded.
3. The method of file concurrency blocking uploading of claim 1, further comprising:
calculating a second product of a preset second proportion and a memory for file transmission, and taking the ratio of the second product to the maximum concurrency number of the system as the block size; and partitioning the file to be uploaded according to the partition size.
4. A method for file concurrency block uploading, the method being applied to a client, the method comprising:
the uploading request sending flow comprises the following steps: reading meta information of a file to be uploaded; wherein the meta information includes a file identification;
file block to be uploaded and uploading thread information receiving flow: receiving file block information to be uploaded sent by a server and allowing the concurrent uploading thread number; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
and (3) data uploading flow: starting an uploading thread according to the number of the allowed concurrent uploading threads, and sending file block data to the server according to the file block information to be uploaded;
The method for calculating the number of the allowed concurrent uploading threads comprises the following steps:
acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client;
subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number;
calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client;
if the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client;
if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number;
if the number of the allowed concurrent uploading threads is smaller than 1, the number of the allowed concurrent uploading threads is adjusted to be 1;
the second loop execution flow: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
5. A file concurrency blocking uploading device, the device being applied to a server, comprising:
An upload request receiving module, configured to: receiving meta information of a file to be uploaded, which is sent by a client; wherein the meta information includes a file identification;
the file block information obtaining module to be uploaded is used for: acquiring file block information to be uploaded of the file to be uploaded according to the file identifier; the file block information to be uploaded comprises a starting offset of a file block to be uploaded and the number of transmitted bytes of the file block which is not completely transmitted;
an uploading thread allocation module, configured to: calculating the number of allowed concurrent uploading threads, and sending the file block information to be uploaded and the number of allowed concurrent uploading threads to the client;
wherein the calculating the number of allowed concurrent uploading threads includes:
acquiring the maximum concurrency number of the system and the maximum concurrency thread number allowed by the client;
subtracting the sum of the concurrent thread numbers of other clients from the maximum concurrent number of the system to obtain the current available thread number;
calculating a first product of a preset first proportion and the maximum concurrency number of the system, and taking the ratio of the first product to the number of files being uploaded and downloaded as the allowable concurrency uploading thread number of the client;
If the number of the allowed concurrent uploading threads is larger than the maximum number of the allowed concurrent threads of the client, the number of the allowed concurrent uploading threads is adjusted to be the maximum number of the allowed concurrent threads of the client;
if the number of the allowed concurrent uploading threads is larger than the current available thread number, the number of the allowed concurrent uploading threads is adjusted to be the current available thread number;
if the number of the allowed concurrent uploading threads is smaller than 1, the number of the allowed concurrent uploading threads is adjusted to be 1;
the uploading data processing module is used for: receiving file block data sent by an uploading thread of the client according to the file block information to be uploaded, and updating historical uploading records according to the file block data;
a first loop execution module for: and repeatedly executing the process until all the file blocks to be uploaded are uploaded.
6. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor performs the steps of the file concurrency blocking upload method according to any one of claims 1 to 4 when the program is executed.
7. A non-transitory computer readable storage medium having stored thereon a computer program, wherein the computer program when executed by a processor implements the steps of the file concurrency blocking uploading method of any of claims 1 to 4.
CN202110886685.4A 2021-08-03 2021-08-03 File concurrency block uploading method and device, electronic equipment and storage medium Active CN113824760B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110886685.4A CN113824760B (en) 2021-08-03 2021-08-03 File concurrency block uploading method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110886685.4A CN113824760B (en) 2021-08-03 2021-08-03 File concurrency block uploading method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113824760A CN113824760A (en) 2021-12-21
CN113824760B true CN113824760B (en) 2024-01-30

Family

ID=78924217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110886685.4A Active CN113824760B (en) 2021-08-03 2021-08-03 File concurrency block uploading method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113824760B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114285838A (en) * 2021-12-22 2022-04-05 中国农业银行股份有限公司 File uploading method, device, system, storage medium and electronic equipment
CN114598697B (en) * 2022-03-29 2024-06-07 浪潮云信息技术股份公司 Method and device for transmitting file and computer readable storage medium
CN115617760B (en) * 2022-12-20 2023-04-18 中化现代农业有限公司 Method for quickly uploading large-batch files
CN117155922B (en) * 2023-10-31 2024-01-30 国家超级计算天津中心 File transmission method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103442037A (en) * 2013-08-09 2013-12-11 华南理工大学 Method for achieving multithreading breakpoint upload of oversized file based on FTP
WO2014056428A1 (en) * 2012-10-12 2014-04-17 腾讯科技(深圳)有限公司 File uploading method and system
CN106911811A (en) * 2017-05-04 2017-06-30 郑州云海信息技术有限公司 A kind of method based on ftp file high efficiency of transmission
CN108093063A (en) * 2017-12-26 2018-05-29 中国电信股份有限公司新疆分公司 Big file multithreading FTP method for uploading
CN109547566A (en) * 2018-12-25 2019-03-29 华南理工大学 A kind of multithreading upload optimization method distributed based on memory
CN109756568A (en) * 2018-12-29 2019-05-14 上海掌门科技有限公司 Processing method, equipment and the computer readable storage medium of file
WO2020001488A1 (en) * 2018-06-28 2020-01-02 杭州海康威视系统技术有限公司 File download method and apparatus, client and computer readable storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9197702B2 (en) * 2013-12-06 2015-11-24 Cellco Partnership System for and method for media upload multithreading for large file uploads

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014056428A1 (en) * 2012-10-12 2014-04-17 腾讯科技(深圳)有限公司 File uploading method and system
CN103442037A (en) * 2013-08-09 2013-12-11 华南理工大学 Method for achieving multithreading breakpoint upload of oversized file based on FTP
CN106911811A (en) * 2017-05-04 2017-06-30 郑州云海信息技术有限公司 A kind of method based on ftp file high efficiency of transmission
CN108093063A (en) * 2017-12-26 2018-05-29 中国电信股份有限公司新疆分公司 Big file multithreading FTP method for uploading
WO2020001488A1 (en) * 2018-06-28 2020-01-02 杭州海康威视系统技术有限公司 File download method and apparatus, client and computer readable storage medium
CN109547566A (en) * 2018-12-25 2019-03-29 华南理工大学 A kind of multithreading upload optimization method distributed based on memory
CN109756568A (en) * 2018-12-29 2019-05-14 上海掌门科技有限公司 Processing method, equipment and the computer readable storage medium of file

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Web的大文件高效上传方法;阮晓龙,李朋楠;《 计算机系统应用》(第2020年第3期期);第234-239页 *
断点续传及多线程机制在远程传版中的应用研究;黎苑文;程明智;徐秀花;杨义先;;北京印刷学院学报(06);第53-56页 *

Also Published As

Publication number Publication date
CN113824760A (en) 2021-12-21

Similar Documents

Publication Publication Date Title
CN113824760B (en) File concurrency block uploading method and device, electronic equipment and storage medium
CN106170968B (en) A kind of data compression storage method, device and distributed file system
CN109683930B (en) Air conditioning equipment program upgrading method, device and system and household electrical appliance
CN112000355A (en) Method and device for firmware upgrading and household appliance
CN110535776B (en) Gateway current limiting method, device, gateway, system and storage medium
US20170085340A1 (en) Method and apparatus for data communication of vehicle
CN111490947A (en) Data packet transmitting method, data packet receiving method, system, device and medium
CN105450682A (en) Method, device, and system for data synchronous storage and synchronizing data to client
CN111930406A (en) Vehicle-mounted terminal micro control unit software upgrading method, electronic equipment and storage medium
CN111752803A (en) Method, device and medium for collecting and reporting buried point data
CN109614131A (en) A kind of broadcasting equipment upgrading control system
CN109936609B (en) Terminal chain type upgrading method and device and upgrading management server
CN107707395B (en) Data transmission method, device and system
CN111651419B (en) Data storage method, device and storage medium
CN106790653B (en) File transmission processing method and device
CN116366629A (en) File uploading and acquiring method, computer equipment and storage medium
CN112685145A (en) Task management method and device and computer equipment
CN110430279B (en) File downloading control method and device
CN112395132B (en) File backup method, system and computer storage medium
CN111221556A (en) Method and system for remotely upgrading RSU mirror image
CN113297145B (en) Migration report generation method and device, electronic equipment and computer storage medium
CN112055849A (en) Exclusive control system and exclusive control method
CN114710333B (en) Method, system, computer device and storage medium for data transmission and verification
CN113986606B (en) Elevator program upgrading method, system, device and storage medium
CN116527539B (en) Data consistency verification method and device and computer equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant