CN111835856A - File downloading method, device, equipment and storage medium - Google Patents

File downloading method, device, equipment and storage medium Download PDF

Info

Publication number
CN111835856A
CN111835856A CN202010691315.0A CN202010691315A CN111835856A CN 111835856 A CN111835856 A CN 111835856A CN 202010691315 A CN202010691315 A CN 202010691315A CN 111835856 A CN111835856 A CN 111835856A
Authority
CN
China
Prior art keywords
download
relay server
downloading
client
information
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
CN202010691315.0A
Other languages
Chinese (zh)
Other versions
CN111835856B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202010691315.0A priority Critical patent/CN111835856B/en
Publication of CN111835856A publication Critical patent/CN111835856A/en
Application granted granted Critical
Publication of CN111835856B publication Critical patent/CN111835856B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The application discloses a file downloading method, device, equipment and storage medium, and relates to the fields of cloud computing, big data and the like. The specific implementation scheme is as follows: acquiring client information and target file information from the downloading instruction; determining a relay server according to the client information, and sending the target file information to the relay server to instruct the relay server to acquire a target file according to the target file information; and sending the relay server information and the target file information to the client to instruct the client to download the target file from the relay server. The relay server is used as a bridge between the data source server and the client, so that the client can download the target file from the relay server.

Description

File downloading method, device, equipment and storage medium
Technical Field
The application relates to the field of data processing, in particular to the fields of cloud computing, big data and the like.
Background
The hyper text transfer secure (HTTP/HTTPS) protocol has the advantages of simple protocol implementation, good cross-platform compatibility, concurrent downloading and the like. However, as the distribution scale is enlarged, the downloading of the HTTP/HTTPS protocol has the problems of slow downloading and the like.
Disclosure of Invention
The application provides a file downloading method, a file downloading device, file downloading equipment and a storage medium.
According to an aspect of the present application, there is provided a method of file downloading, including the steps of:
acquiring client information and target file information from the downloading instruction;
determining a relay server according to the client information, and sending the target file information to the relay server to instruct the relay server to acquire a target file according to the target file information;
and sending the relay server information and the target file information to the client to instruct the client to download the target file from the relay server.
According to another aspect of the present application, there is provided a method of file downloading, comprising the steps of:
determining a relay server from the obtained relay server information;
determining a target file to be downloaded from the acquired target file information;
the target file is downloaded from the relay server using a predetermined first download protocol.
According to a third aspect of the present application, there is provided an apparatus for file downloading, comprising:
the information acquisition module is used for acquiring client information and target file information from the downloading instruction;
the first relay server determining module is used for determining a relay server according to the client information and sending the target file information to the relay server so as to instruct the relay server to acquire the target file according to the target file information;
and the downloading instruction sending module is used for sending the relay server information and the target file information to the client so as to instruct the client to download the target file from the relay server.
According to a fourth aspect of the present application, there is provided an apparatus for file downloading, comprising:
the second relay server determining module is used for determining a relay server from the obtained relay server information;
the target file determining module is used for determining a target file to be downloaded from the obtained target file information;
and the target file downloading module is used for downloading the target file from the relay server by using a preset first downloading protocol.
According to a fifth aspect of the present application, an embodiment of the present application provides an electronic device, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to cause the at least one processor to perform a method provided by any one of the embodiments of the present application.
According to a sixth aspect of the present application, an embodiment of the present application provides a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform a method provided by any one of the embodiments of the present application.
According to the technology of the application, the relay server is used as a bridge between the data source server and the client, so that the client can download the target file from the relay server.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present application, nor do they limit the scope of the present application. Other features of the present application will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not intended to limit the present application. Wherein:
FIG. 1 is a flow diagram of a method of file download according to an embodiment of the present application;
FIG. 2 is a flow chart of determining a relay server according to the present application;
FIG. 3 is a flow diagram of a method of file download according to another embodiment of the present application;
FIG. 4 is a flow diagram of a method of file download according to another embodiment of the present application;
FIG. 5 is a flow diagram of a method of file download according to another embodiment of the present application;
FIG. 6 is a flow diagram of a method of file download according to another embodiment of the present application;
FIG. 7 is a schematic diagram of an apparatus for file downloading according to an embodiment of the present application;
FIG. 8 is a schematic diagram of an apparatus for file download according to another embodiment of the present application;
FIG. 9 is a schematic diagram of an apparatus for file download according to another embodiment of the present application;
fig. 10 is a block diagram of an electronic device for implementing a method of file downloading according to an embodiment of the present application.
Detailed Description
The following description of the exemplary embodiments of the present application, taken in conjunction with the accompanying drawings, includes various details of the embodiments of the application for the understanding of the same, which are to be considered exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present application. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
As shown in fig. 1, in an embodiment of the present application, a method for downloading a file is provided, which includes the following steps:
s101: acquiring client information and target file information from the downloading instruction;
s102: determining a relay server according to the client information, and sending the target file information to the relay server to instruct the relay server to acquire a target file according to the target file information;
s103: and sending the relay server information and the target file information to the client to instruct the client to download the target file from the relay server.
The execution main body of the method can be a server or a cloud terminal and the like, and the server or the cloud terminal can be used as a download controller.
The download instruction can be issued by a download user through a mobile phone, a computer and other equipment, and the download user can be used as a download requester. The downloading instruction at least comprises target file information to be downloaded and client information used for receiving the target file. The client is used for receiving the target file, and can be a device used by a downloading user or a device used by other users.
The target file may be any type of file such as a software update/upgrade package, a game, a movie and/or a document, etc.
The client information may include information such as the number of clients, and the IP address of each client.
The geographic position of the client, the network operator and other information can be determined according to the IP address of the client. Based on this, the relay server may be determined according to the geographical location of the client and/or the network operator. In the embodiment of the present application, one client may correspond to one relay server, or a plurality of clients may correspond to one relay server.
The relay server may serve as a bridge between the data source server and the client, that is, the relay server may obtain the target file from the data source server and store the target file, so that the client may download the target file from the relay server. Based on the method, the speed of downloading the target file by the client can be increased.
In addition, the number of clients can be determined according to the client information, and for example, the number of clients can include N clients. A relay server may be selected for each of the N clients, respectively, depending on the number of clients.
On the other hand, the information of the relay server and the information of the target file are sent to the client, so that the client can know the relay server for downloading the target file and the target file to be downloaded. Still taking N clients as an example, the target file downloaded by each of the N clients may be the same or different.
Through the scheme, each client in the N clients downloads the target file from the corresponding relay server respectively, so that the downloading speed can be improved.
In addition, the history query may be performed by storing the relay server information and the destination file information. For example, it may be stored in the cloud or in a database associated with the relay server.
It should be noted that the above scheme is not the same as a Content Delivery Network (CDN) in the related art. The embodiment of the application can be irrelevant to CDN service providers. In the implementation process, the method can be matched with any CDN node or can be carried out without a CDN network. Compared with a downloading technology depending on a CDN (content delivery network), the scheme in the embodiment of the application can save business cost.
Through the scheme, the relay server is used as a bridge between the data source server and the client, so that the client can download the target file from the relay server, and the downloading speed can be improved compared with that of the data source server.
As shown in fig. 2, in one embodiment, the client information includes the geographic location of the client and/or the network operator;
on this basis, the step S102 of determining the relay server according to the client information includes the following sub-steps:
s1021: according to the geographic position of the client, taking a relay server which is within a preset range away from the geographic position as a determined relay server; and/or the presence of a gas in the gas,
s1022: and taking the relay server belonging to the same network operator as the client as the determined relay server.
The geographical location and/or network operator of each client may be directly included in the client information. In addition, the location and/or network operator of each client can also be determined according to the IP address of the client.
In one aspect, the relay server may be determined based on the geographic location of the client. For example, the geographic location of the client is determined to be an area a. For example, a relay server within 200 kilometers (predetermined range) of the area a may be selected as an optional relay server. The predetermined range in the embodiment of the present application may be determined according to actual conditions.
On the other hand, according to the network operator of the client, the relay server of the same network operator can be selected as the optional relay server.
Further, the geographic location of the client and the network operator can be referred to simultaneously. For example, in the case where a plurality of relay servers exist within a predetermined range from the geographical position, the relay server of the same network operator as the client may be preferentially selected.
By the scheme, the speed of downloading the file can be further improved by utilizing the geographical position of the client and/or selecting the corresponding relay server by the network operator. In addition, because the relay server is determined according to the client, different networks can be compatible.
In one embodiment, the method for downloading the file may further include the steps of:
acquiring a first downloading parameter from the downloading instruction, and sending the first downloading parameter to the relay server;
the first download parameter includes at least one of a download concurrency number of the relay server, a download bandwidth of the relay server and a download flow of the relay server.
The relay server download concurrency number may represent the number of transactions (download thread requests) that the relay server can process simultaneously per second. The global download concurrency number of the relay server may be equal to the sum of the client download concurrency numbers of each client communicating with and downloading from the relay server.
The relay server download bandwidth may represent the bandwidth that the relay server may provide for the download.
The relay server download traffic may represent the file download speed that the relay server may provide.
By setting the first download parameter, fine control of the network of the relay server can be realized.
As shown in fig. 3, in one embodiment, the method further comprises the steps of:
s104: acquiring downloading protocol information from the downloading instruction, wherein the downloading protocol information comprises at least two different downloading protocols;
s105: and sending the download protocol information to the relay server, so that the relay server provides the target file conforming to the download protocol to the client.
The download protocol information is used to define the type of download protocol that the relay server can provide. Illustratively, the download Protocol may include a HyperText Transfer Protocol (HTTP) download Protocol and a bit stream (BT) download Protocol.
By sending the download protocol information to the relay server, the relay server can provide the target file conforming to the download protocol.
By the scheme, the relay server can provide the target files conforming to different download protocols according to the download protocol information. The download protocol can be enriched, and different download requirements of the client side can be met. Meanwhile, the multiple downloading protocols can enable the client to adjust according to the downloading speed, and the downloading speed of the client is not affected.
In one embodiment, the present application further comprises the steps of:
acquiring a second downloading parameter from the downloading instruction, and sending the second downloading parameter to the client;
the second download parameter includes at least one of a client download concurrency number, a client download bandwidth, and a client download traffic.
The client download concurrency number may represent the number of transactions (download thread requests) the client sends to the relay server.
The client download bandwidth may represent the bandwidth available to the client for download.
The client download traffic may represent the file download speed available to the client.
Illustratively, the relay server download bandwidth may be equal to the sum of the client download bandwidth of each client that communicates with the relay server and performs the download. The client download traffic may be equal to the sum of the client download traffic of each client communicating with the relay server and downloading.
By the scheme, network fine control of the client can be realized.
As shown in fig. 4, in an embodiment of the present application, a method for downloading a file is provided, which includes the following steps:
s401: determining a relay server from the obtained relay server information;
s402: determining a target file to be downloaded from the acquired target file information;
s403: the target file is downloaded from the relay server using a predetermined first download protocol.
In the present embodiment, the execution subject of the method may be a client, and the client may include a smart device such as a computer or a mobile phone.
The client may obtain the relay server information and the target file information from the download controller. And determining a relay server from the relay server information, and determining a target file to be downloaded from the target file information.
In the present embodiment, the predetermined first download protocol may be a BT download protocol, i.e., a BT download protocol is used to download the target file from the relay server.
In the embodiment of the application, the client can download the target file from the relay server, because the relay server is selected by the download controller through the information of the client. Therefore, compared with the related art that the target file needs to be downloaded from the data source server, the target file is downloaded from the relay server in the application, and the downloading speed can be greatly improved.
As shown in fig. 5, in one embodiment, the method further comprises:
s404: detecting a download speed based on a predetermined first download protocol;
s405: in case the download speed is below a threshold value, the download protocol is adjusted.
The client can detect the downloading speed based on the first downloading protocol in real time in the downloading process. That is, the download speed based on the BT download protocol is detected in real time.
Alternatively, the download rate of the first download protocol may be detected at intervals, for example, every 5 minutes, to determine the average download rate over the past 5 minutes.
In case the download speed is below a threshold, the download protocol may be adjusted.
Adjusting the download protocol may include downloading using a second download protocol; or, the method may further include downloading by using the first download protocol and the second download protocol simultaneously, and the like.
By the scheme, the downloading protocol can be timely adjusted according to the downloading speed, so that the client can finish downloading the target file at a better downloading speed.
As shown in fig. 6, in one embodiment, step S405 further includes the following sub-steps:
s4051: downloading the first sub-part of the target file which is not downloaded by adopting a first downloading protocol;
s4052: downloading the second sub-part of the target file which is not downloaded by adopting a preset second downloading protocol;
the first subsection and the second subsection are divided according to a download speed of the first download protocol and/or a download speed of the second download protocol.
In the case that the download speed based on the first download protocol is lower than the threshold, the non-downloaded portion may be determined from the downloaded portion of the target file. The non-downloaded part is divided into two parts, the first part being a first sub-part not downloaded and the second part being a second sub-part not downloaded.
The first subportion not downloaded may still be downloaded using the first download protocol, e.g. the first subportion not downloaded may still be downloaded using the BT download protocol. The second, non-downloaded sub-portion may instead be downloaded using a second download protocol, e.g. the second, non-downloaded sub-portion may be downloaded using the HTTP download protocol.
The division of the first and second subparts may be performed according to a download speed of the first download protocol and/or the second download protocol. For example, in case the download speed of the first download protocol is below a threshold, the ratio of the first subportion and the second subportion may be set to 3:7 or 4: 6. In addition, during downloading, the first sub-part and the second sub-part may be adjusted in combination with the real-time downloading speed.
In an alternative embodiment, the client may download from the relay server by using the second download protocol, and may also download from the data source server by using the second download protocol, which is not limited herein.
By the scheme, the second download protocol can be adopted for auxiliary downloading under the condition that the first download protocol cannot meet the requirement of the download speed, so that the download speed of the client side is ensured.
As shown in fig. 7, in an embodiment of the present application, there is provided an apparatus for file downloading, including:
an information obtaining module 701, configured to obtain client information and target file information from a download instruction;
a first relay server determining module 702, configured to determine a relay server according to the client information, and send target file information to the relay server, so as to instruct the relay server to obtain a target file according to the target file information;
a download instruction sending module 703, configured to send the relay server information and the target file information to the client, so as to instruct the client to download the target file from the relay server.
In one embodiment, the client information includes the geographic location of the client and/or network operator information;
a first relay server determination module 702, comprising:
a first determining submodule 7021, configured to, according to the geographic position of the client, use a relay server that is within a predetermined range from the geographic position as a determined relay server; and/or the presence of a gas in the gas,
a second determining submodule 7022 is configured to use a relay server belonging to the same network operator as the client as the determined relay server.
In one embodiment, the file downloading apparatus further includes:
a first download parameter sending module 704, configured to obtain a first download parameter from the download instruction, and send the first download parameter to the relay server;
the first download parameter includes at least one of a download concurrency number of the relay server, a download bandwidth of the relay server and a download flow of the relay server.
In one embodiment, the file downloading apparatus further includes:
a download protocol information obtaining module 705, configured to obtain download protocol information from the download instruction, where the download protocol information includes at least two different download protocols;
a download protocol information sending module 706, configured to send the download protocol information to the relay server, so that the relay server provides the target file conforming to the download protocol to the client.
In one embodiment, the file downloading apparatus further includes:
a second download parameter sending module 707, configured to obtain a second download parameter from the download instruction, and send the second download parameter to the client;
the second download parameter includes at least one of a client download concurrency number, a client download bandwidth, and a client download traffic.
As shown in fig. 8, in an embodiment of the present application, there is provided an apparatus for file downloading, including:
a second relay server determination module 801, configured to determine a relay server from the obtained relay server information;
an object file determining module 802, configured to determine an object file to be downloaded from the obtained object file information;
an object file downloading module 803, configured to download the object file from the relay server by using a predetermined first downloading protocol.
In one embodiment, the file downloading apparatus further includes:
a download speed detection module 804, configured to detect a download speed based on the predetermined first download protocol;
a download protocol adjusting module 805, configured to adjust a download protocol used when the target file is downloaded from the relay server if the download speed is lower than a threshold.
In one embodiment, the download protocol adjustment module 805 includes:
a first download protocol execution submodule 8051, configured to download, by using a first download protocol, a first sub-portion of the target file that is not downloaded;
a second loading protocol execution submodule 8052, configured to download, by using a predetermined second downloading protocol, a second sub-part of the target file that is not downloaded;
the first subsection and the second subsection are divided according to a download speed of the first download protocol and/or a download speed of the second download protocol.
As shown in fig. 9, in an embodiment of the present application, there is provided an apparatus for downloading a file, including:
and the control server receives a downloading instruction sent by the user and acquires the client information and the target file information from the downloading instruction. And determining a relay server according to the client information, and sending the target file information to the relay server so as to instruct the relay server to acquire the target file from the data source server according to the target file information. And sending the relay server information and the target file information to the client to indicate the client to the relay server to obtain the target file.
In addition, the control server also stores the downloading instruction and the information analyzed from the downloading instruction into a database.
And the relay server acquires the target file from the data source server according to the received target file information. And providing the target file conforming to at least two download protocols to the client. The two download protocols may include an HTTP download protocol and a BT download protocol.
And the client is used for acquiring the target file from the relay server according to the relay server information and the target file information. The client downloads the target file by default by using a BT (bit rate protocol) downloading protocol, and can adopt an HTTP downloading protocol to assist in downloading when the downloading speed is lower than a threshold value.
According to an embodiment of the present application, an electronic device and a readable storage medium are also provided.
Fig. 10 is a block diagram of an electronic device according to an embodiment of the present application. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the present application that are described and/or claimed herein.
As shown in fig. 10, the electronic apparatus includes: one or more processors 1010, memory 1020, and interfaces for connecting the various components, including a high-speed interface and a low-speed interface. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions for execution within the electronic device, including instructions stored in or on the memory to display graphical information of a GUI on an external input/output apparatus (such as a display device coupled to the interface). In other embodiments, multiple processors and/or multiple buses may be used, along with multiple memories and multiple memories, as desired. Also, multiple electronic devices may be connected, with each device providing portions of the necessary operations (e.g., as a server array, a group of blade servers, or a multi-processor system). Fig. 10 illustrates an example of a processor 1010.
Memory 1020 is a non-transitory computer readable storage medium as provided herein. The memory stores instructions executable by at least one processor to cause the at least one processor to perform the file downloading method provided by the present application. The non-transitory computer readable storage medium of the present application stores computer instructions for causing a computer to perform the method of file downloading provided by the present application.
The memory 1020, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the file downloading method in the embodiments of the present application (for example, the information acquisition module 701, the first relay server determination module 702, and the download instruction transmission module 703 shown in fig. 7, and/or the second relay server determination module 801, the target file determination module 802, and the target file download module 803 shown in fig. 8). The processor 1010 executes various functional applications of the server and data processing, i.e., a method of downloading a file in the above-described method embodiment, by executing non-transitory software programs, instructions, and modules stored in the memory 1020.
The memory 1020 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the electronic device of the method of file download, and the like. Further, the memory 1020 may include high speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory 1020 may optionally include memory located remotely from the processor 1010, which may be connected to the electronic device of the method of file download over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The electronic device of the file downloading method may further include: an input device 1030 and an output device 1040. The processor 1010, the memory 1020, the input device 1030, and the output device 1040 may be connected by a bus or other means, and fig. 10 illustrates an example of connection by a bus.
The input device 1030 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the electronic equipment of the file download method, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, a pointing stick, one or more mouse buttons, a track ball, a joystick, and the like. The output devices 1040 may include a display device, auxiliary lighting devices (e.g., LEDs), and tactile feedback devices (e.g., vibrating motors), among others. The display device may include, but is not limited to, a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display, and a plasma display. In some implementations, the display device can be a touch screen.
Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, application specific ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
These computer programs (also known as programs, software applications, or code) include machine instructions for a programmable processor, and may be implemented using high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus, and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present application may be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solutions disclosed in the present application can be achieved, and the present invention is not limited herein.
The above-described embodiments should not be construed as limiting the scope of the present application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (18)

1. A method of file download, comprising:
acquiring client information and target file information from the downloading instruction;
determining a relay server according to the client information, and sending the target file information to the relay server to instruct the relay server to acquire a target file according to the target file information;
and sending the relay server information and the target file information to a client to instruct the client to download the target file from the relay server.
2. The method of claim 1, wherein the client information comprises a geographic location of the client and/or network operator information;
the determining the relay server according to the client information includes:
according to the geographic position of the client, taking a relay server which is within a preset range away from the geographic position as a determined relay server; and/or the presence of a gas in the gas,
and taking the relay server belonging to the same network operator as the client as the determined relay server.
3. The method of claim 1, further comprising:
acquiring a first downloading parameter from the downloading instruction, and sending the first downloading parameter to the relay server;
the first download parameter comprises at least one of a download concurrency number of the relay server, a download bandwidth of the relay server and a download flow of the relay server.
4. The method of any of claims 1 to 3, further comprising:
acquiring downloading protocol information from the downloading instruction, wherein the downloading protocol information comprises at least two different downloading protocols;
and sending the download protocol information to the relay server to enable the relay server to provide a target file conforming to the download protocol to the client.
5. The method of claims 1 to 3, further comprising:
acquiring a second downloading parameter from the downloading instruction, and sending the second downloading parameter to the client;
the second download parameter comprises at least one of a client download concurrency number, a client download bandwidth and a client download flow.
6. A method of file download, comprising:
determining a relay server from the obtained relay server information;
determining a target file to be downloaded from the acquired target file information;
and downloading the target file from the relay server by using a preset first downloading protocol.
7. The method of claim 6, further comprising:
detecting a download speed based on the predetermined first download protocol;
and adjusting a downloading protocol used when the target file is downloaded from the relay server under the condition that the downloading speed is lower than the threshold value.
8. The method of claim 7, wherein the adjusting the download protocol used in downloading the target file from the relay server if the download speed is below a threshold comprises:
downloading the first sub-part of the target file which is not downloaded by adopting the first downloading protocol;
downloading a second sub-part of the target file which is not downloaded by adopting a preset second downloading protocol;
the first subportion and the second subportion are divided according to a download speed of the first download protocol and/or a download speed of the second download protocol.
9. An apparatus for file downloading, comprising:
the information acquisition module is used for acquiring client information and target file information from the downloading instruction;
the first relay server determining module is used for determining a relay server according to the client information, and sending the target file information to the relay server so as to instruct the relay server to acquire a target file according to the target file information;
and the downloading instruction sending module is used for sending the relay server information and the target file information to a client so as to instruct the client to download the target file from the relay server.
10. The apparatus of claim 9, wherein the client information comprises a geographic location of the client and/or network operator information;
the first relay server determination module includes:
the first determining submodule is used for taking a relay server which is within a preset range away from the geographic position as a determined relay server according to the geographic position of the client; and/or the presence of a gas in the gas,
and the second determining submodule is used for taking the relay server which belongs to the same network operator as the client as the determined relay server.
11. The apparatus of claim 10, further comprising:
a first download parameter sending module, configured to obtain a first download parameter from the download instruction, and send the first download parameter to the relay server;
the first download parameter comprises at least one of a download concurrency number of the relay server, a download bandwidth of the relay server and a download flow of the relay server.
12. The apparatus of any of claims 9 to 11, further comprising:
a download protocol information obtaining module, configured to obtain download protocol information from the download instruction, where the download protocol information includes at least two different download protocols;
and the download protocol information sending module is used for sending the download protocol information to the relay server so that the relay server provides the target file conforming to the download protocol to the client.
13. The apparatus of any of claims 9 to 11, further comprising:
the second downloading parameter sending module is used for acquiring a second downloading parameter from the downloading instruction and sending the second downloading parameter to the client;
the second download parameter comprises at least one of a client download concurrency number, a client download bandwidth and a client download flow.
14. An apparatus for file downloading, comprising:
the second relay server determining module is used for determining a relay server from the obtained relay server information;
the target file determining module is used for determining a target file to be downloaded from the obtained target file information;
and the target file downloading module is used for downloading the target file from the relay server by using a preset first downloading protocol.
15. The apparatus of claim 14, further comprising:
a download speed detection module for detecting a download speed based on the predetermined first download protocol;
and the download protocol adjusting module is used for adjusting the download protocol used when the target file is downloaded from the relay server under the condition that the download speed is lower than the threshold value.
16. The apparatus of claim 15, wherein the download protocol adjustment module comprises:
the first download protocol execution submodule is used for downloading the first sub-part of the target file which is not downloaded by adopting the first download protocol;
the second loading protocol execution submodule is used for downloading the second sub-part of the target file which is not downloaded by adopting a preset second downloading protocol;
the first subportion and the second subportion are divided according to a download speed of the first download protocol and/or a download speed of the second download protocol.
17. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 8.
18. A non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method of any one of claims 1 to 8.
CN202010691315.0A 2020-07-17 2020-07-17 File downloading method, device, equipment and storage medium Active CN111835856B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010691315.0A CN111835856B (en) 2020-07-17 2020-07-17 File downloading method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010691315.0A CN111835856B (en) 2020-07-17 2020-07-17 File downloading method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111835856A true CN111835856A (en) 2020-10-27
CN111835856B CN111835856B (en) 2022-09-16

Family

ID=72923493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010691315.0A Active CN111835856B (en) 2020-07-17 2020-07-17 File downloading method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111835856B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565398A (en) * 2020-12-03 2021-03-26 中科三清科技有限公司 GFS data downloading method and device, electronic equipment and storage medium
CN112671659A (en) * 2020-12-17 2021-04-16 江苏满运物流信息有限公司 Flow control method, device, equipment and storage medium
CN112714179A (en) * 2020-12-25 2021-04-27 携程旅游网络技术(上海)有限公司 Client multitask installation method, system, equipment and medium based on browser
CN113032040A (en) * 2021-03-15 2021-06-25 北京百度网讯科技有限公司 Method, apparatus, device, medium and product for processing tasks
CN113382065A (en) * 2021-06-08 2021-09-10 京东方科技集团股份有限公司 File downloading method, device, system, equipment and storage medium
CN113824756A (en) * 2020-12-17 2021-12-21 京东安联财产保险有限公司 File processing method and device, storage medium and electronic equipment
CN114338725A (en) * 2021-12-31 2022-04-12 深圳市瑞云科技有限公司 Distributed storage scheduling method for improving large-scale cluster rendering upper limit
CN114928604A (en) * 2022-06-29 2022-08-19 建信金融科技有限责任公司 File distribution method and device
CN115002098A (en) * 2022-05-13 2022-09-02 聚投科技(珠海)有限公司 File publishing method based on local area network autonomous discovery and election, computer device and computer readable storage medium

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719936A (en) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 Method, device and cache system for providing file downloading service
CN101741730A (en) * 2009-12-02 2010-06-16 成都市华为赛门铁克科技有限公司 Method and equipment for downloading file and method and system for providing file downloading service
CN101742610A (en) * 2008-11-05 2010-06-16 华为技术有限公司 Method, system and device for transmitting message
CN102164115A (en) * 2010-02-22 2011-08-24 中国电信股份有限公司 Method and system for multisource mixing file transmission
CN102394898A (en) * 2011-04-07 2012-03-28 传聚互动(北京)科技有限公司 File downloading method and system based on P2P (point to point)
KR20130101654A (en) * 2012-02-24 2013-09-16 중앙대학교 산학협력단 Packet aggregation mechanism for voip service in multi-hop network and terminal thereby
US20130322321A1 (en) * 2011-02-11 2013-12-05 Fujitsu Limited Data transmission method, wireless communication system, destination node and relay node
CN105872042A (en) * 2016-03-29 2016-08-17 国家电网公司 Double-side accelerating system based on HTTP protocol
CN106027683A (en) * 2016-07-29 2016-10-12 乐视控股(北京)有限公司 File download processing method and device
CN106412137A (en) * 2016-12-20 2017-02-15 北京并行科技股份有限公司 File downloading system and file downloading method
CN106888261A (en) * 2017-02-27 2017-06-23 深圳市先河系统技术有限公司 A kind of distributed document transmission method, server and private clound equipment
CN107317828A (en) * 2016-04-26 2017-11-03 腾讯科技(深圳)有限公司 Document down loading method and device
CN107529229A (en) * 2016-06-21 2017-12-29 中兴通讯股份有限公司 The method of data transfer, apparatus and system
US10306442B1 (en) * 2018-01-16 2019-05-28 Skylo Technologies Inc. Devices and methods for specialized machine-to-machine communication transmission network modes via edge node capabilities
CN110381107A (en) * 2019-05-24 2019-10-25 平安普惠企业管理有限公司 Document down loading method, device, computer equipment and storage medium
CN110830565A (en) * 2019-10-31 2020-02-21 北京奇艺世纪科技有限公司 Resource downloading method, device, system, electronic equipment and storage medium
CN111193772A (en) * 2019-12-05 2020-05-22 商客通尚景科技(上海)股份有限公司 File downloading method and server

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101742610A (en) * 2008-11-05 2010-06-16 华为技术有限公司 Method, system and device for transmitting message
CN101741730A (en) * 2009-12-02 2010-06-16 成都市华为赛门铁克科技有限公司 Method and equipment for downloading file and method and system for providing file downloading service
CN101719936A (en) * 2009-12-09 2010-06-02 成都市华为赛门铁克科技有限公司 Method, device and cache system for providing file downloading service
CN102164115A (en) * 2010-02-22 2011-08-24 中国电信股份有限公司 Method and system for multisource mixing file transmission
US20130322321A1 (en) * 2011-02-11 2013-12-05 Fujitsu Limited Data transmission method, wireless communication system, destination node and relay node
CN102394898A (en) * 2011-04-07 2012-03-28 传聚互动(北京)科技有限公司 File downloading method and system based on P2P (point to point)
KR20130101654A (en) * 2012-02-24 2013-09-16 중앙대학교 산학협력단 Packet aggregation mechanism for voip service in multi-hop network and terminal thereby
CN105872042A (en) * 2016-03-29 2016-08-17 国家电网公司 Double-side accelerating system based on HTTP protocol
CN107317828A (en) * 2016-04-26 2017-11-03 腾讯科技(深圳)有限公司 Document down loading method and device
CN107529229A (en) * 2016-06-21 2017-12-29 中兴通讯股份有限公司 The method of data transfer, apparatus and system
CN106027683A (en) * 2016-07-29 2016-10-12 乐视控股(北京)有限公司 File download processing method and device
CN106412137A (en) * 2016-12-20 2017-02-15 北京并行科技股份有限公司 File downloading system and file downloading method
CN106888261A (en) * 2017-02-27 2017-06-23 深圳市先河系统技术有限公司 A kind of distributed document transmission method, server and private clound equipment
US10306442B1 (en) * 2018-01-16 2019-05-28 Skylo Technologies Inc. Devices and methods for specialized machine-to-machine communication transmission network modes via edge node capabilities
CN110381107A (en) * 2019-05-24 2019-10-25 平安普惠企业管理有限公司 Document down loading method, device, computer equipment and storage medium
CN110830565A (en) * 2019-10-31 2020-02-21 北京奇艺世纪科技有限公司 Resource downloading method, device, system, electronic equipment and storage medium
CN111193772A (en) * 2019-12-05 2020-05-22 商客通尚景科技(上海)股份有限公司 File downloading method and server

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ABB INC: "Relay Services", 《百度学术》 *
杨涛: "具有固定中继节点多跳小区结构", 《电子测量技术》 *
马文德: "无线多跳网络中支持多媒体Qos的中继节点转发队列调度算法研究", 《电脑与信息技术》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565398A (en) * 2020-12-03 2021-03-26 中科三清科技有限公司 GFS data downloading method and device, electronic equipment and storage medium
CN112565398B (en) * 2020-12-03 2021-12-10 中科三清科技有限公司 GFS data downloading method and device, electronic equipment and storage medium
CN112671659B (en) * 2020-12-17 2022-08-05 江苏满运物流信息有限公司 Flow control method, device, equipment and storage medium
CN112671659A (en) * 2020-12-17 2021-04-16 江苏满运物流信息有限公司 Flow control method, device, equipment and storage medium
CN113824756A (en) * 2020-12-17 2021-12-21 京东安联财产保险有限公司 File processing method and device, storage medium and electronic equipment
CN112714179A (en) * 2020-12-25 2021-04-27 携程旅游网络技术(上海)有限公司 Client multitask installation method, system, equipment and medium based on browser
CN112714179B (en) * 2020-12-25 2022-10-11 携程旅游网络技术(上海)有限公司 Client multitask installation method, system, equipment and medium based on browser
CN113032040A (en) * 2021-03-15 2021-06-25 北京百度网讯科技有限公司 Method, apparatus, device, medium and product for processing tasks
CN113032040B (en) * 2021-03-15 2023-07-28 北京百度网讯科技有限公司 Method, apparatus, device, medium, and article for processing tasks
CN113382065A (en) * 2021-06-08 2021-09-10 京东方科技集团股份有限公司 File downloading method, device, system, equipment and storage medium
CN114338725A (en) * 2021-12-31 2022-04-12 深圳市瑞云科技有限公司 Distributed storage scheduling method for improving large-scale cluster rendering upper limit
CN114338725B (en) * 2021-12-31 2024-01-30 深圳市瑞云科技有限公司 Distributed storage scheduling method for improving upper limit of large-scale cluster rendering
CN115002098A (en) * 2022-05-13 2022-09-02 聚投科技(珠海)有限公司 File publishing method based on local area network autonomous discovery and election, computer device and computer readable storage medium
CN114928604A (en) * 2022-06-29 2022-08-19 建信金融科技有限责任公司 File distribution method and device
CN114928604B (en) * 2022-06-29 2023-06-16 建信金融科技有限责任公司 File distribution method and device

Also Published As

Publication number Publication date
CN111835856B (en) 2022-09-16

Similar Documents

Publication Publication Date Title
CN111835856B (en) File downloading method, device, equipment and storage medium
CN111753997B (en) Distributed training method, system, device and storage medium
CN110865855B (en) Applet processing method and related equipment
CN111767069B (en) Applet processing method, server, device and storage medium
CN110727434A (en) Rendering method, rendering device, electronic equipment and storage medium
CN111752843A (en) Method, device, electronic equipment and readable storage medium for determining influence surface
CN112565356B (en) Data storage method and device and electronic equipment
CN110765075A (en) Storage method and equipment of automatic driving data
CN112000394A (en) Method, apparatus, device and storage medium for accessing an applet
CN111461343A (en) Model parameter updating method and related equipment thereof
CN110796191B (en) Trajectory classification method and device
CN111970132A (en) OTA data packet issuing flow control method, device and server
CN111767089A (en) Method, device and equipment for loading file and storage medium
CN113452535B (en) Upgrading method, information processing method and device and electronic equipment
CN112532528A (en) Message routing method and device for rule engine
CN110620701A (en) Data stream monitoring processing method, device, equipment and storage medium
CN113765979B (en) Information transmission method, system and device
CN111698243B (en) Parameter configuration method and device, electronic equipment and storage medium
CN111581049B (en) Distributed system running state monitoring method, device, equipment and storage medium
CN112822302B (en) Data normalization method and device, electronic equipment and storage medium
CN113094139A (en) UI style updating method and device
CN111639116A (en) Data access connection session protection method and device
CN111597026A (en) Method and device for acquiring information
CN110727435A (en) Rendering method, rendering device, electronic equipment and storage medium
CN111292223A (en) Graph calculation processing method and device, electronic equipment and storage medium

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