CN117880267A - Big file uploading method and system based on multiple clouds and electronic equipment - Google Patents

Big file uploading method and system based on multiple clouds and electronic equipment Download PDF

Info

Publication number
CN117880267A
CN117880267A CN202310273476.1A CN202310273476A CN117880267A CN 117880267 A CN117880267 A CN 117880267A CN 202310273476 A CN202310273476 A CN 202310273476A CN 117880267 A CN117880267 A CN 117880267A
Authority
CN
China
Prior art keywords
uploading
server
file
client
link
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.)
Pending
Application number
CN202310273476.1A
Other languages
Chinese (zh)
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.)
Qiansan Beijing Technology Co ltd
Original Assignee
Qiansan Beijing 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 Qiansan Beijing Technology Co ltd filed Critical Qiansan Beijing Technology Co ltd
Priority to CN202310273476.1A priority Critical patent/CN117880267A/en
Publication of CN117880267A publication Critical patent/CN117880267A/en
Pending legal-status Critical Current

Links

Abstract

The invention discloses a large file uploading method, a large file uploading system and electronic equipment based on cloudiness, wherein the large file uploading system comprises a client and a server, and the client sends an uploading request to the server based on RESTful API provided by the server; the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; the server receives an uploading link returned by the cloud server and returns the uploading link to the client; the client receives an uploading link returned by the server; the method comprises the steps that a client cuts a file to be uploaded into a plurality of file pieces; and the client side sequentially uploads the plurality of file slices to a preset storage path of the cloud server through an uploading link. The technical scheme provided by the invention solves the problems of frequent updating of client software and high cost.

Description

Big file uploading method and system based on multiple clouds and electronic equipment
Technical Field
The invention relates to the field of cloud storage, in particular to a large file uploading method, a large file uploading system and electronic equipment based on multiple clouds.
Background
The cloud object storage is a distributed storage service for storing mass files, and has the advantages of high expansibility, low cost, reliability, safety and the like. Through diversified modes such as a console, an API, an SDK, a tool and the like, a user can simply and quickly access the distributed storage service, upload and download the multi-format file into the cloud server and manage the multi-format file.
Currently, uploading large files to a cloud server generally has two schemes of direct client-side transmission and server-side transfer: the first scheme is that client software is installed on a client device, and then a software development kit (Software Development Kit, SDK) provided by cloud object storage is called through the client software, so that large file fragments are uploaded to a designated path of a cloud server where a cloud object storage service is located. In the scenario that the client supports multi-type cloud object storage, if the client software needs to add one type of cloud object storage, the scheme needs to access the SDK provided by the new type of cloud object storage, and then the client software is reissued to the on-shelf application store, so that a user updates the client software from the application store, the user frequently updates the client software, and the experience is poor. The second scheme is that a server is built between client software and a plurality of types of cloud object storage, the server accesses various SDKs, when a large file needs to be uploaded, the client software uploads the large file to the server in fragments through RESTful API provided by the server, and the server invokes the SDKs provided by the cloud object storage to upload the corresponding cloud storage space. Although the second scheme is that the server accesses a new SDK, the client software is not required to be released to an application store, but the scheme enables the client to upload files to the server through a RESTful API and then enables the server to call the SDK to upload fragmented files to the cloud server, so that the bandwidth of the server is doubled, and high monetary cost is brought. Therefore, a new large file uploading method is needed, and the problems of frequent updating of client software and high cost can be avoided.
Disclosure of Invention
In view of the above, the embodiment of the invention provides a large file uploading method, a large file uploading system and electronic equipment based on cloudiness, thereby simultaneously solving the problems of frequent updating of client software and high cost.
According to a first aspect, an embodiment of the present invention provides a method for uploading a large file based on multiple clouds, which is applied to a client, and the method includes: transmitting an uploading request to a server based on a RESTful API provided by the server, so that the server responds to the uploading request and transmits an uploading link acquisition request to a cloud server through an SDK; receiving an uploading link returned by a server, wherein the uploading link is a network link of a preset storage path, which is received by the server from a cloud server and generated by the cloud server in response to an uploading link acquisition request; cutting a file to be uploaded into a plurality of file pieces; and sequentially uploading the plurality of file slices to a preset storage path of the cloud server through the uploading link.
Optionally, the method further comprises: and sending an uploading end notification to the server based on the RESTful API provided by the server, so that the server responds to the uploading end notification and calls a corresponding SDK to merge a plurality of file pieces in a preset storage path of the cloud server.
Optionally, the cutting the file to be uploaded into a plurality of file pieces includes:
and cutting the file to be uploaded according to a preset time length to obtain a plurality of file pieces.
According to a second aspect, an embodiment of the present invention provides a method for uploading a large file based on multiple clouds, which is applied to a server, and the method includes: receiving an uploading request sent by a client based on a RESTful API provided by a server; responding to the uploading request, and sending an uploading link acquisition request to a cloud server through an SDK (software development kit) so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; and receiving an uploading link returned by the cloud server, and returning the uploading link to the client so that the client cuts the file to be uploaded into a plurality of file pieces, and sequentially uploading the file pieces to a preset storage path of the cloud server through the uploading link.
Optionally, the method further comprises: receiving an uploading end notification sent by a client based on a RESTful API provided by a server; and responding to the uploading ending notification, and calling a corresponding SDK to merge a plurality of file slices in a preset storage path of the cloud server.
Optionally, the sending, by the SDK, an upload link acquiring request to the cloud server in response to the upload request includes: if the uploading request designates the type of cloud object storage, an uploading link acquisition request is sent to a corresponding cloud server through an SDK which designates the cloud object storage; and if the uploading request does not specify the type of cloud object storage, selecting at least one SDK from all configured SDKs according to the preset uploading priority, and sending an uploading link acquisition request to a cloud server corresponding to the selected SDK.
Optionally, the selecting at least one SDK from all configured SDKs by a preset upload priority includes: judging important attributes of a file to be uploaded, and if the important attributes of the file to be uploaded represent importance, selecting more than two SDKs from all configured SDKs; and if the important attribute of the file to be uploaded indicates that the important attribute is not important, calling the cloud object with the lowest storage cost to store the corresponding SDK.
Optionally, the method further comprises: and if the current SDK call fails, calling the next SDK based on a preset call sequence.
According to a third aspect, an embodiment of the present invention provides a large file uploading system based on multiple clouds, where the system client and a server end, the client sends an uploading request to the server end based on a RESTful API provided by the server end; the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; the server receives an uploading link returned by the cloud server and returns the uploading link to the client; the client receives an uploading link returned by the server; the client cuts the file to be uploaded into a plurality of file pieces; and the client side sequentially uploads the plurality of file slices to a preset storage path of the cloud server through the uploading link.
According to a fourth aspect, an embodiment of the present invention provides an electronic device, including: the system comprises a memory and a processor, wherein the memory and the processor are in communication connection, the memory stores computer instructions, and the processor executes the computer instructions, so as to execute the method in the first aspect, the second aspect or any optional implementation manner of the first aspect and the second aspect.
The technical scheme that this application provided has following advantage:
according to the technical scheme, when a user needs to upload a large file to cloud storage, firstly, an uploading request is sent to a server through a client based on a RESTful API provided by the server; then, the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; then the server receives the uploading link returned by the cloud server and returns the uploading link to the client; the method comprises the steps that a file to be uploaded is cut into a plurality of file pieces by a client, and the file pieces are sequentially uploaded to a preset storage path of a cloud server through uploading links. On one hand, when the types of cloud object storage are increased, the client does not need to update an installation package, and only needs to uniformly access a new SDK (software description language) by the server, on the other hand, the fragmented files are not directly uploaded to the cloud server through the server, but are directly uploaded to the cloud server through an uploading link returned by the server, so that the server does not need to use twice of bandwidth, the bandwidth cost can be obviously reduced, and the uploading cost is saved.
Drawings
The features and advantages of the present invention will be more clearly understood by reference to the accompanying drawings, which are illustrative and should not be construed as limiting the invention in any way, in which:
FIG. 1 is a schematic diagram showing steps of a method for uploading a large file based on multiple clouds according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart of a method for uploading a large file based on multiple clouds in one embodiment of the invention;
FIG. 3 is a schematic diagram of a big file uploading system based on multiple clouds according to an embodiment of the present invention;
fig. 4 shows a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments. All other embodiments, based on the embodiments of the invention, which a person skilled in the art would obtain without making any inventive effort, are within the scope of the invention.
Referring to fig. 1, in one embodiment, a method for uploading a large file based on multiple clouds specifically includes the following steps, wherein steps S101 to S104 are applied to a client, steps S201 to S203 are applied to a server, and steps S301 to S302 are applied to a cloud server.
Step S101: and sending an uploading request to the server based on the RESTful API provided by the server.
Step S201: and receiving an uploading request sent by the client based on the RESTful API provided by the server.
Step S202: and responding to the uploading request, and sending an uploading link acquisition request to the cloud server through the SDK.
Step S301: and the cloud server responds to the uploading link acquisition request to generate an uploading link of the preset storage path.
Step S302: and returning to upload and link to the server.
Step S203: and receiving an uploading link returned by the cloud server, and returning the uploading link to the client.
Step S102: and receiving an uploading link returned by the server.
Step S103: and cutting the file to be uploaded into a plurality of file pieces.
Step S104: and sequentially uploading the plurality of file pieces to a preset storage path of the cloud server through uploading links.
Specifically, REST is a software architecture style and design style, a set of design principles and constraint conditions are provided, and a RESTful API is an interface meeting the REST architecture style, and the API locates resources by using URLs and describes operations by using HTTP verbs (GET, POST, PUT, DELETE), so that a server supports a plurality of different clients, such as android, apples, mobile phones, computers and the like, and front-end and back-end decoupling is achieved. In the embodiment of the invention, when a user needs to upload a large file to a cloud object for storage, the large file is not directly uploaded to a server, but the user sends an uploading request to the server through a client based on a RESTful API provided by the server, and the client used by the user can be a home computer, a mobile phone or a tablet computer. The server side serves as a transit server, when the server side receives an uploading request sent by the client side, the server side sends an uploading link acquisition request to a cloud server corresponding to the cloud object storage service through an SDK provided by cloud object storage which is accessed in advance in the server side. After receiving the uploading link acquisition request, the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path. For example https:// os-cn-shaping-internal. Interfacing/com/onbox/20230302/sfsdfasdad, enabling clients to upload files to be uploaded to cloud servers through upload link fragments by means of a curl-X PUT-H command, for example curl-X PUT-H "Content-Type: application/oct-stream" -d 'XSEADIEADDFS'
'https:// oss-cn-shzhen-internal. Aliyuncs. Com/onbox/20230302/sfsdfassdad'. And then, the cloud server returns the uploading link to the server, the server returns the uploading link to the client, and after the client receives the uploading link, the file to be uploaded is cut into a plurality of file pieces and the file pieces are sequentially uploaded to a preset storage path of the cloud server through the uploading link. The method comprises the following specific steps: on the one hand, when the types of cloud object storage are increased, the client does not need to update the installation package, and only needs the server to uniformly access the new SDK, on the other hand, the fragmented files are not directly uploaded to the cloud server through the server, but are directly uploaded to the cloud server through an uploading link returned by the server, so that the server does not need to use twice of bandwidth, the bandwidth cost can be obviously reduced, and the uploading cost is saved.
Specifically, in an embodiment, the method for uploading a big file based on multiple clouds provided by the embodiment of the invention further includes the following steps:
step one: the client sends an uploading end notification to the server based on the RESTful API provided by the server.
Step two: and the server receives the uploading end notification and calls the corresponding SDK to merge the plurality of file slices in the preset storage path of the cloud server in response to the uploading end notification.
Specifically, in this embodiment, when the client finishes uploading all the file pieces, the client sends an upload end notification to the server based on the RESTful API provided by the server again, so as to notify the server to call the corresponding SDK to merge the file pieces in the preset storage path of the cloud server, so as to ensure the integrity of the file stored in the cloud server. Typically, different types of cloud object stores include different file merge policies that are preset in the SDKs provided by the cloud object store. For example: the cloud object store provides file content merge functionality for the user based on Yun Hanshu (Serverless Cloud Function, SCF). The file content merging capability may store binary content of a plurality of files on a cloud object, merge complete content in a specified order, and generate a new file. After adding a multi-file merging rule for a storage barrel, a user needs to specify URLs of merged files, then performs the action of merging file contents by triggering an SCF function, and delivers the merged files to a preset storage path of the storage barrel.
Specifically, in one embodiment, the step S103 specifically includes the following steps:
step three: cutting the file to be uploaded according to the preset time length to obtain a plurality of file pieces.
Specifically, in this embodiment, the large file to be uploaded is cut in a stream form according to a preset duration (typically 10 s), and file pieces are sequentially uploaded to the upload link according to a time sequence. By the aid of the cutting mode, the merging difficulty of large files in the cloud server is reduced, the files are merged according to time sequence, indexes are clearer, and errors in file merging are avoided. For example, if the large file is a multimedia file, the large file may be cut according to the playing time, if the large file is not a multimedia file, the large file may be divided into a plurality of small segments according to the file size, then file pieces are extracted according to the division sequence, for example, 1G file is divided equally according to the size of 1M, the number of the pieces is 1G/1M, then the first piece reads data of 0-1M, and the second piece takes data of 1M-2M until all the file pieces are extracted.
Specifically, in an embodiment, the step S202 specifically includes the following steps:
step four: if the uploading request designates the type of the cloud object storage, sending an uploading link acquisition request to a corresponding cloud server through the SDK of the designated cloud object storage.
Step five: if the uploading request does not specify the type of cloud object storage, at least one SDK is selected from all configured SDKs according to the preset uploading priority, and an uploading link acquisition request is sent to a cloud server corresponding to the selected SDK.
Specifically, in this embodiment, in order to further improve the experience of the user uploading the large file to the cloud object storage. The uploading request sent by the user through the client may further include a cloud object storage type specified by the client, and if the uploading request specifies the cloud object storage type, the server responds to the request and sends an uploading link acquisition request to the corresponding cloud server through the SDK of the cloud object storage specified by the user, so that the file to be uploaded by the user is uploaded to the cloud object storage service specified by the user. If the user does not specify the type of cloud object storage, at least one SDK is selected from all the configured SDKs according to the preset uploading priority, and an uploading link acquisition request is sent to a cloud server corresponding to the selected SDK. The preset uploading priority can be determined according to the size and importance degree of the file to be uploaded, the storage price of cloud object storage, the uploading bandwidth price and the like, so that the safety, the reliability and the storage cost performance of the user file are guaranteed.
Specifically, in an embodiment, the fifth step specifically includes the following steps:
step six: judging important attributes of the file to be uploaded, and selecting more than two SDKs from all the configured SDKs if the important attributes of the file to be uploaded represent importance.
Step seven: and if the important attribute of the file to be uploaded indicates that the important attribute is not important, calling the cloud object with the lowest storage cost to store the corresponding SDK.
Step eight: and if the current SDK call fails, calling the next SDK based on a preset call sequence.
Specifically, in this embodiment, if the user does not specify the preset type of cloud object storage, the priority of file uploading first considers the important attribute of the file to be uploaded. Judging important attributes of the file to be uploaded, and selecting more than two SDKs from all the configured SDKs if the important attributes of the file to be uploaded represent importance. For example: the importance of the server side to the file is preset with importance levels, the higher the importance level is, the more SDK types are called by the server side, the importance levels of the file to be uploaded are marked in advance by a user through the client side, when the server side receives the uploading request, the importance levels marked by the user are judged to belong to which one of the preset importance levels, if the file uploaded by the user is important, the server side needs to select two or more SDKs from all the configured SDKs, and upload link acquisition requests are sent to a plurality of cloud object storage services, so that the file to be uploaded of the user can be stored in a plurality of cloud servers, and the problem that the file cannot be extracted due to damage or loss of the file in one cloud server is avoided.
If the important attribute of the file to be uploaded indicates unimportance, the server calls the corresponding SDK according to the cost priority, and specifically calls the cloud object with the lowest storage cost to store the corresponding SDK. For example, the server is accessed with the SDKs provided by the 5 types of cloud object storage, and the SDKs provided by the first cloud object storage are preferentially called if the storage price of the first cloud object storage is the lowest, so that a user uploads a file to the first cloud object storage, and the storage cost of the user is reduced.
In addition, if the server fails to call the current SDK, the embodiment also calls the next SDK based on the preset call sequence through the degradation alternative scheme, so that the file of the user can be stably uploaded.
As shown in fig. 2, in a specific application scenario, the method for uploading a large file based on multiple clouds provided in the foregoing embodiment is further explained.
Firstly, a client calls a RESTful API provided by a server and requests an uploading link of a preset storage path in a cloud server from the server; the server side calls SDKs provided by different cloud object storage according to a certain designated strategy or priority strategy, and requests uploading links of preset storage paths in a cloud server to the cloud object storage service; if the policy selects the first cloud object storage, the service requests the first cloud object storage to upload the link through A1; if the policy selects the second cloud object storage or other cloud object storage, the service requests the uploading link of the second cloud object storage or other cloud object through B1 and C1; then, the server returns an uploading link returned by the cloud server to the client; the client uses FFmpeg technology to cut the large file according to the preset time length of 10s, and directly uploads the file pieces to the corresponding cloud servers through uploading links returned by the server according to the time sequence, such as corresponding A2, B2 and C2 requests in FIG. 2; the client-side loops the previous step until all the file sheets are uploaded; then the client calls RESTful API provided by the server to inform the server that the uploading is finished; and the server side invokes SDKs provided by different cloud object storage according to a certain strategy, merges the fragmented files uploaded by the client side in the multi-cloud storage space by utilizing respective technologies, and finally synthesizes a large file, such as corresponding A3, B3 and C3 requests.
Through the steps, when a user needs to upload a large file to cloud storage, the technical scheme provided by the application firstly sends an uploading request to a server through a client based on a RESTful API provided by the server; then, the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; then the server receives the uploading link returned by the cloud server and returns the uploading link to the client; the method comprises the steps that a file to be uploaded is cut into a plurality of file pieces by a client, and the file pieces are sequentially uploaded to a preset storage path of a cloud server through uploading links. On one hand, when the types of cloud object storage are increased, the client does not need to update an installation package, and only needs to uniformly access a new SDK (software description language) by the server, on the other hand, the fragmented files are not directly uploaded to the cloud server through the server, but are directly uploaded to the cloud server through an uploading link returned by the server, so that the server does not need to use twice of bandwidth, the bandwidth cost can be obviously reduced, and the uploading cost is saved.
As shown in fig. 3, this embodiment further provides a big file uploading system based on multiple clouds, where the system includes: the system comprises a client and a server, wherein the client sends an uploading request to the server based on a RESTful API provided by the server; the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; the server receives an uploading link returned by the cloud server and returns the uploading link to the client; the client receives an uploading link returned by the server; the method comprises the steps that a client cuts a file to be uploaded into a plurality of file pieces; and the client side sequentially uploads the plurality of file slices to a preset storage path of the cloud server through an uploading link.
The embodiment of the invention provides a big file uploading system based on multiple clouds, which is used for executing the big file uploading method based on multiple clouds provided by the embodiment, the implementation mode and the principle are the same, and details refer to the related description of the embodiment of the method and are not repeated.
Through the cooperative cooperation of the components, when a user needs to upload a large file to cloud storage, the technical scheme provided by the application firstly sends an uploading request to a server through a client based on a RESTful API provided by the server; then, the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path; then the server receives the uploading link returned by the cloud server and returns the uploading link to the client; the method comprises the steps that a file to be uploaded is cut into a plurality of file pieces by a client, and the file pieces are sequentially uploaded to a preset storage path of a cloud server through uploading links. On one hand, when the types of cloud object storage are increased, the client does not need to update an installation package, and only needs to uniformly access a new SDK (software description language) by the server, on the other hand, the fragmented files are not directly uploaded to the cloud server through the server, but are directly uploaded to the cloud server through an uploading link returned by the server, so that the server does not need to use twice of bandwidth, the bandwidth cost can be obviously reduced, and the uploading cost is saved.
Fig. 4 shows an electronic device according to an embodiment of the invention, comprising a processor 901 and a memory 902, which may be connected via a bus or otherwise, in fig. 4 by way of example.
The processor 901 may be a central processing unit (Central Processing Unit, CPU). The processor 901 may also be other general purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or a combination thereof.
The memory 902 is used as a non-transitory computer readable storage medium for storing non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the methods in the method embodiments described above. The processor 901 executes various functional applications of the processor and data processing, i.e., implements the methods in the above-described method embodiments, by running non-transitory software programs, instructions, and modules stored in the memory 902.
The memory 902 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, at least one application program required for a function; the storage data area may store data created by the processor 901, and the like. In addition, the memory 902 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, memory 902 optionally includes memory remotely located relative to processor 901, which may be connected to processor 901 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
One or more modules are stored in the memory 902 that, when executed by the processor 901, perform the methods of the method embodiments described above.
The specific details of the electronic device may be correspondingly understood by referring to the corresponding related descriptions and effects in the above method embodiments, which are not repeated herein.
It will be appreciated by those skilled in the art that implementing all or part of the above-described methods in the embodiments may be implemented by a computer program for instructing relevant hardware, and the implemented program may be stored in a computer readable storage medium, and the program may include the steps of the embodiments of the above-described methods when executed. The storage medium may be a magnetic Disk, an optical Disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a Flash Memory (Flash Memory), a Hard Disk (HDD), or a Solid State Drive (SSD); the storage medium may also comprise a combination of memories of the kind described above.
Although embodiments of the present invention have been described in connection with the accompanying drawings, various modifications and variations may be made by those skilled in the art without departing from the spirit and scope of the invention, and such modifications and variations are within the scope of the invention as defined by the appended claims.

Claims (10)

1. A method for uploading a large file based on multiple clouds, which is applied to a client, the method comprising:
transmitting an uploading request to a server based on RESTful API provided by the server, so that the server responds to the uploading request and transmits an uploading link acquisition request to a cloud server through an SDK;
receiving an uploading link returned by a server, wherein the uploading link is a network link of a preset storage path, which is received by the server from a cloud server and generated by the cloud server in response to an uploading link acquisition request;
cutting a file to be uploaded into a plurality of file pieces;
and sequentially uploading the plurality of file slices to a preset storage path of the cloud server through the uploading link.
2. The method according to claim 1, wherein the method further comprises:
and sending an uploading end notification to the server based on the RESTful API provided by the server, so that the server responds to the uploading end notification and calls a corresponding SDK to merge a plurality of file pieces in a preset storage path of the cloud server.
3. The method of claim 1, wherein the cutting the file to be uploaded into a plurality of file pieces comprises:
and cutting the file to be uploaded according to a preset time length to obtain a plurality of file pieces.
4. The method is characterized by being applied to a server, and comprises the following steps:
receiving an uploading request sent by a client based on a RESTful API provided by a server;
responding to the uploading request, and sending an uploading link acquisition request to a cloud server through an SDK (software development kit) so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path;
and receiving an uploading link returned by the cloud server, and returning the uploading link to the client so that the client cuts the file to be uploaded into a plurality of file pieces, and sequentially uploading the file pieces to a preset storage path of the cloud server through the uploading link.
5. The method according to claim 4, wherein the method further comprises:
receiving an uploading end notification sent by a client based on a RESTful API provided by a server;
and responding to the uploading ending notification, and calling a corresponding SDK to merge a plurality of file slices in a preset storage path of the cloud server.
6. The method of claim 4, wherein the sending, by the SDK, the upload link acquisition request to the cloud server in response to the upload request comprises:
if the uploading request designates the type of cloud object storage, an uploading link acquisition request is sent to a corresponding cloud server through an SDK which designates the cloud object storage;
and if the uploading request does not specify the type of cloud object storage, selecting at least one SDK from all configured SDKs according to the preset uploading priority, and sending an uploading link acquisition request to a cloud server corresponding to the selected SDK.
7. The method of claim 6, wherein selecting at least one SDK from all configured SDKs by a preset upload priority comprises:
judging important attributes of a file to be uploaded, and if the important attributes of the file to be uploaded represent importance, selecting more than two SDKs from all configured SDKs;
and if the important attribute of the file to be uploaded indicates that the important attribute is not important, calling the cloud object with the lowest storage cost to store the corresponding SDK.
8. The method of claim 7, wherein the method further comprises:
and if the current SDK call fails, calling the next SDK based on a preset call sequence.
9. A big file uploading system based on multiple clouds is characterized in that the system client and the server side, wherein,
the client sends an uploading request to the server based on a RESTful API provided by the server;
the server side responds to the uploading request and sends an uploading link acquisition request to the cloud server through the SDK, so that the cloud server responds to the uploading link acquisition request to generate an uploading link of a preset storage path;
the server receives an uploading link returned by the cloud server and returns the uploading link to the client;
the client receives an uploading link returned by the server;
the client cuts the file to be uploaded into a plurality of file pieces;
and the client side sequentially uploads the plurality of file slices to a preset storage path of the cloud server through the uploading link.
10. An electronic device, comprising:
a memory and a processor in communication with each other, the memory having stored therein computer instructions, the processor executing the computer instructions to perform the method of any of claims 1-3 or 4-8.
CN202310273476.1A 2023-03-20 2023-03-20 Big file uploading method and system based on multiple clouds and electronic equipment Pending CN117880267A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310273476.1A CN117880267A (en) 2023-03-20 2023-03-20 Big file uploading method and system based on multiple clouds and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310273476.1A CN117880267A (en) 2023-03-20 2023-03-20 Big file uploading method and system based on multiple clouds and electronic equipment

Publications (1)

Publication Number Publication Date
CN117880267A true CN117880267A (en) 2024-04-12

Family

ID=90587193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310273476.1A Pending CN117880267A (en) 2023-03-20 2023-03-20 Big file uploading method and system based on multiple clouds and electronic equipment

Country Status (1)

Country Link
CN (1) CN117880267A (en)

Similar Documents

Publication Publication Date Title
CN106993054B (en) File distribution method, node and system
CN111385112B (en) Slice resource deployment method, device, slice manager and computer storage medium
CN105812435B (en) Application upgrading data packet processing method and device, electronic equipment and system
CN110166523B (en) Content updating method, device, equipment and computer readable storage medium
CN103024081B (en) Be applicable to the terminal scheduling method of the point-to-point communication of effective guarantee communication system
CN102833293A (en) Method for downloading resources in peer to server and peer (P2SP) network, and client
CN107689976B (en) File transmission method and device
US11281511B2 (en) Predictive microservice systems and methods
US11223698B2 (en) Intermediated retrieval of networked content
US20200320154A1 (en) A webpage loading method, webpage loading system and server
CN110312140B (en) Live broadcast data processing method, device and system and computer readable storage medium
CN108595574B (en) Database cluster connection method, device, equipment and storage medium
CN108111630B (en) Zookeeper cluster system and connection method and system thereof
CN102571942A (en) Method and device for pushing resource information and providing service in P2P (peer-to-peer) network
CN111866211B (en) Network access method, device, terminal and medium applied to terminal
CN112398802B (en) Data downloading method and related equipment
CN111064700B (en) Downloading method, device and system of cloud game
CN117880267A (en) Big file uploading method and system based on multiple clouds and electronic equipment
KR20150008541A (en) Method and server for controlling data transmition
US20140149499A1 (en) Remote request fulfillment and delivery
CN104580276A (en) Information pushing method, device and system, as well as information access device
CN115412777A (en) Streaming media data transmission method, device and system
CN110784518A (en) Static resource acquisition method and device
CN110597540A (en) Version updating method and device of financial terminal, server and storage medium
CN108021459B (en) Method and device for sending dotting logs across processes

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