WO2020015087A1 - Method and system for large-scale processing of images, computer device, and computer storage medium - Google Patents

Method and system for large-scale processing of images, computer device, and computer storage medium Download PDF

Info

Publication number
WO2020015087A1
WO2020015087A1 PCT/CN2018/104643 CN2018104643W WO2020015087A1 WO 2020015087 A1 WO2020015087 A1 WO 2020015087A1 CN 2018104643 W CN2018104643 W CN 2018104643W WO 2020015087 A1 WO2020015087 A1 WO 2020015087A1
Authority
WO
WIPO (PCT)
Prior art keywords
business logic
picture processing
data processing
module
picture
Prior art date
Application number
PCT/CN2018/104643
Other languages
French (fr)
Chinese (zh)
Inventor
魏颢
廖学聪
朱威
刘敬一
斯科特·马修·罗伯特
Original Assignee
深圳码隆科技有限公司
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 深圳码隆科技有限公司 filed Critical 深圳码隆科技有限公司
Publication of WO2020015087A1 publication Critical patent/WO2020015087A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Definitions

  • the present application relates to the technical field of multimedia data processing, and in particular, to a large-scale picture processing method, system, computer equipment, and computer storage medium.
  • network servers In today's network environment, network servers often need to process huge multimedia data submitted by users. Considering that the amount of multimedia data submitted by users, the time of submission, and the frequency of submission are uncertain, in order to be able to cope with the most extreme situations such as multiple users submitting a large number of multimedia data requests at the same time in the same time period, the existing A batch processing framework for multimedia data usually requires a sufficient number of high-performance servers, and multiple high-performance servers are always on standby. However, this method will cause most or even all standby servers to be in a useless state during a time period when there is less data to be processed, which is likely to cause server waste. In addition, the startup, upgrade, shutdown, and reassignment of a large number of servers will bring great operation and maintenance costs.
  • the present application provides a large-scale picture processing method, system, computer equipment, and computer storage medium, which are used to solve at least one of the above problems in the existing multimedia data processing technology.
  • a large-scale picture processing method includes the following steps:
  • the large-scale picture processing method further includes the following steps:
  • the data processing module uses artificial intelligence to perform data processing.
  • the data processing module includes a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
  • the method of uploading the data processing module to the serverless computing device for storage is: integrating the data processing module into the serverless computing device in the form of a plug-in.
  • the step S1 the number of picture processing requests is multiple; in the step S2, the number of business logic message queues is multiple; and the step S2 includes:
  • Each picture processing request is stored separately in a business logic message queue applicable to the picture processing request.
  • the step S3 includes:
  • a plurality of data processing modules respectively adapted to process the plurality of business logic parts are called from the serverless computing device of the public cloud platform.
  • the step S4 includes:
  • the step S5 includes:
  • the aggregation result is saved.
  • An embodiment of the present application further provides a large-scale image processing system, which includes a receiving module, a temporary storage module, an execution module, a public cloud platform, and a storage module; the temporary storage module includes a business logic message queue The execution module includes a business logic executor; the public cloud platform includes a serverless computing device, and the serverless computing device includes a data processing module; wherein:
  • the receiving module is configured to: receive a picture processing request from a user, and store the picture processing request in the business logic message queue according to the business logic of the picture processing request;
  • the temporary storage module is configured to temporarily store the picture processing request through the business logic message queue
  • the execution module is configured to: take the picture processing request from the business logic message queue through the business logic executor, and from the serverless computing device of the public cloud platform according to the business logic of the picture processing request
  • the data processing module calls a data processing module adapted to process the picture processing request
  • the data processing module is configured to complete the processing work requested by the picture processing request
  • the storage module is configured to save a completion result of processing work requested by the picture processing request.
  • the storage module includes a plurality of storage devices and / or storage areas in a plurality of databases.
  • the data processing module uses artificial intelligence to perform data processing.
  • the data processing module includes a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
  • the number of the data processing modules is multiple; the number of the business logic executors is multiple.
  • the receiving module is further configured to: receive multiple picture processing requests from a user, determine a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request; and process each picture request separately Stored in a business logic message queue suitable for this picture processing request.
  • An embodiment of the present application further provides a computer device, where the computer device includes a memory and a processor, where the memory is configured to store a computer program, and the processor runs the computer program to cause the computer device to perform The large-scale picture processing method according to the embodiment.
  • An embodiment of the present application further provides a computer-readable storage medium storing the computer program stored and used in the computer device.
  • the present application essentially implements a large-scale image processing method and a corresponding system, computer device, and computer-readable storage medium based on a public cloud platform serverless computing device.
  • the characteristics of serverless computing devices on public cloud platforms are: only actual calculations are performed, and no costs will be incurred; no calculations will not generate costs; at the same time, the increase of computing resources can be completed by itself as the call volume continues to increase. ; With the reduction in the number of calls, the reduction of computing resources is completed on its own.
  • the serverless computing device when a user submits a large amount of image data, the serverless computing device will increase the computing resources on its own to support a sufficient amount of data processing; when the image data submitted by the user is processed, it will no longer be When there is a request sent to a serverless computing device, no computing fees will be incurred at this time.
  • this application can obtain many advantages: it does not need to set up a large number of servers to work on its own, which effectively saves framework costs and operation and maintenance costs; it can easily and flexibly expand application programs , To obtain better availability and fault tolerance; can easily implement framework customization, without being limited by platform type and storage location; at the same time, this application can still support users to call peaks on the premise of obtaining these advantages The amount of work required.
  • this application has made various improvements to the technology for processing large-scale picture data. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems in the prior art.
  • FIG. 1 is a block diagram showing a structure of a large-scale picture processing system according to an embodiment of the present application.
  • FIG. 2 is a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application
  • FIG. 3 is a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of a computer device according to an embodiment of the present application.
  • the embodiments of the present application provide a large-scale picture processing method and a corresponding method for implementing the large-scale picture processing Method for large-scale picture processing system. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems existing in the prior art.
  • FIG. 1 is a block diagram illustrating a structure of a large-scale picture processing system 100 according to an embodiment of the present application.
  • the large-scale image processing system 100 includes a receiving module 10, a temporary storage module 20, an execution module 30, a public cloud platform 40, and a storage module 50.
  • the receiving module 10 may include, for example, an existing API (Application Programming Interface) gateway.
  • the API gateway has a network communication connection with a larger number of actual network users, and the communication connection mode may be wired. Communication may also be wireless communication.
  • the API gateway may receive data from each network user, for example, a picture processing request from a network user; the picture processing request carries a picture that the network user wants to process.
  • the method for the API gateway to establish a network communication connection with a network user and to receive a picture processing request from the network user can be implemented by using related technologies, and no further description is needed here.
  • the receiving module may be configured to: receive a picture processing request from a user, and store the picture processing request in the service logic message queue according to the business logic of the picture processing request. Specifically, it may be further configured to: receive multiple picture processing requests from the user, and determine a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request; and store each picture processing request to the Picture processing request in the business logic message queue.
  • the temporary storage module 20 may be a local temporary storage module or a temporary storage module provided on the cloud (for example, on the public cloud platform 40) to obtain a larger storage capacity.
  • the receiving module 10 may establish a network communication connection with the temporary storage module 20 through, for example, an existing wired or wireless connection method, and may temporarily store data such as the above-mentioned picture processing request received from a network user to the temporary storage module 20 In the temporary storage module 20.
  • the temporary storage module 20 may include multiple business logic message queues 21, and these business logic message queues 21 may respectively correspond to different types of business logic.
  • business logic refers to the rules and processes that an entity unit should have in order to provide services to another entity unit.
  • Business logic can include (1) domain entities.
  • Domain entities are abstract representations of various objects in a certain domain and can be represented by nouns (such as concrete or abstract nouns or even gerunds, as long as they are nominal), and constitute the skeleton of the entire business logic and Static model. Generally, each domain entity has its own attributes and behaviors.
  • Business rules are rules that operate in a certain field and constitute the key points and dynamic model of the entire business logic. Business rules act on domain entities, and domain entities operate in compliance with business rules.
  • Integrity constraints Domain entities and business rules construct the body of business logic, but on top of this body, there are also restrictions on integrity constraints.
  • a business process or workflow is the process of initiating and hosting coordination domain entities to complete established rules.
  • Business logic can be stored in a temporary queue in the form of a message queue. Different types of business logic can be set up with different message queues. Each message queue can run asynchronously.
  • the receiving module 10 may determine a business logic message queue 21 applicable to the picture processing request according to the specific business logic type of each received picture processing request, and then temporarily store each picture processing request to the The business logic message queue 21 of the picture processing request, that is, the business logic message queue 21 corresponding to the business logic type of the picture processing request.
  • Each of the business logic message queues 21 can store multiple picture processing requests with corresponding business logic types.
  • the execution module 30 may establish a network communication connection with the temporary storage module 20 through, for example, an existing wired or wireless connection method, and retrieve data from the temporary storage module 20, for example, temporarily save the temporary storage.
  • the picture processing request in the business logic message queue 21 of the storage module 20 is stored.
  • the execution module 30 may include a plurality of business logic executors 31. These business logic executors 31 may be set to correspond to different types of business logic, and therefore may be based on their corresponding business logic types. A correspondence relationship is further established with the above-mentioned business logic message queue 21.
  • Each business logic executor 31 may establish communication with its corresponding business logic message queue 21 through, for example, an existing wired or wireless connection method, and take out and store the business logic message queue from its corresponding business logic message queue 21 Image processing request in 21. It can be understood that the execution module 30 can also be set on the cloud (for example, on the public cloud platform 40) to save local resources.
  • the public cloud platform 40 may be a cloud platform that can be used by users provided by third-party providers in the current market, and is responsible for organizing and coordinating computing resources and providing various computing services according to user needs.
  • the public cloud platform 40 may include a serverless computing device 41.
  • the public cloud platform is a data processing module.
  • the public cloud is generally available through the Internet. It is usually free or low-cost. Its core attribute is shared resource services, which can be considered as the main form of cloud computing. .
  • the basic architecture and basic working principle of the public cloud platform 40 and the serverless computing device 41 therein can be implemented with reference to related technologies in the art, and therefore will not be repeated here.
  • the execution module 30 may establish a network communication connection with the public cloud platform 40 through, for example, an existing wired or wireless connection method.
  • the serverless computing device 41 may include multiple data processing modules 42.
  • Each data processing module 42 may use artificial intelligence to perform data processing.
  • each data processing module 42 may include, for example, Machine learning algorithm models, deep learning models, and codes that can use the machine learning algorithm models and deep learning models, and so on.
  • These data processing modules 42 may be business logic basic units integrated in the serverless computing device 41 in the form of plug-ins, and they may correspond to different types of business logic, so they may be further based on their corresponding business logic types. Corresponds to the business logic message queue 21 and business logic executor 31 described above.
  • each business logic executor 31 After each business logic executor 31 takes the picture processing request stored in the business logic message queue 21 from the corresponding business logic message queue 21, it can query the corresponding data processing module 42 according to the corresponding business logic type. Then, the data processing module 42 is called to complete the processing work requested by the picture processing request (that is, the calculation work required by the picture processing request). In this way, all the calculation work required for the image processing request can be transferred to the serverless computing device 41 on the public cloud platform 40 for execution, without the need to perform these calculation work on the local server, thereby saving better. Local resources.
  • the storage module 50 may include a variety of local data storage devices such as hard disks, mobile hard disks, etc., or may include one of the data storage devices (e.g., the public cloud platform 40 or other available clouds). Storage area in one or more databases (such as MangoDB database, MySQL database, HBase database, etc.).
  • the execution module 30 may establish a network communication connection with the storage module 50 through, for example, an existing wired or wireless connection manner.
  • the corresponding business logic executor 31 in the execution module 30 can obtain the processing results (such as picture processing) made by the data processing module 42 Request the required calculation result), and store the processing result in the storage module 50 for query and use by the user.
  • the corresponding business logic executor 31 in the execution module 30 may also actively send the obtained processing results made by the data processing module 42 to the user.
  • the specific implementation manner can be flexibly set according to user needs.
  • FIG. 2 illustrates a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application.
  • the large-scale picture processing method may use the large-scale picture processing system 100 shown in FIG. 1. to realise. This method may be executed by a large-scale picture processing system.
  • a large-scale picture processing system can be implemented using, for example, computer equipment. The steps of the large-scale picture processing method are detailed below:
  • the receiving module 10 in the large-scale picture processing system 100 can receive picture processing requests from users.
  • the number of picture processing requests may be one or more.
  • the picture processing requests include: Pictures to be processed by the user, and the picture processing request corresponds to a business logic type. Since the API module can be used in the receiving module 10, which can receive a large amount of image data at the same time, the embodiment of the present application allows users to upload a large number of image processing requests in batches at the same time. Requests for 10, or even 10 million images.
  • step S2 after receiving the image processing request (usually a large number of image processing requests), the receiving module 10 does not immediately hand over these image processing requests to a data processing device (such as a local server or the cloud) for processing and return to processing.
  • a data processing device such as a local server or the cloud
  • these picture processing requests are first stored in the business logic message queue 21 of the temporary storage module 20 for asynchronous processing.
  • the number of the business logic queues 21 is preferably multiple, and these business logic message queues 21 may be set to correspond to different types of business logic, respectively; the receiving module 10 may process according to each picture received
  • the specific business logic type of the request determines the business logic message queue 21 that is applicable to the picture processing request, and then temporarily stores each picture processing request to the business logic message queue 21 that is suitable for the picture processing request, that is, with the picture
  • the business logic message queue 21 corresponding to the type of business logic processing the request.
  • Each of the business logic message queues 21 can store multiple picture processing requests with corresponding business logic types.
  • step S3 the business logic executor 31 sequentially retrieves and stores the business logic from the corresponding business logic message queue 21 in a predetermined order (for example, the storage order of picture processing requests in the business logic message queue 21).
  • Each picture in the message queue 21 processes a request, and then queries the data processing module 42 corresponding to the type of the business logic from the serverless computing device 41 of the public cloud platform 40 according to the business logic of the retrieved picture processing request, and calls
  • the data processing module 42 completes the processing work requested by the picture processing request (that is, the calculation work required by the picture processing request). In this way, all the calculation work required for the picture processing request can be transferred to the serverless computing device 41 on the public cloud platform 40 for execution, without performing these calculation work on the local server.
  • the serverless computing device 41 on the public cloud platform 40 can include a sufficient number of data processing modules 42, it can process a large number of image processing requests at the same time.
  • the processing power is very powerful and will not be affected by the capacity of the local server. limits.
  • the serverless computing device 41 on the public cloud platform 40 can automatically call an appropriate amount of data processing module 42 according to the number of image processing requests, that is, adjust the computing resources on its own, while satisfying the needs of users, it can also reasonably use the resources and avoid Waste computing resources and generate extra computing costs. S4. Use the data processing module to complete the processing work requested by the picture processing request.
  • each data processing module 42 processes the processing work requested by the image processing request corresponding to its type based on the corresponding business logic and the work order arranged by the corresponding business logic executor 31.
  • the corresponding business logic executor 31 in the execution module 30 can obtain the data processing module 42 A processing result (such as a calculation result required for a picture processing request), and the processing result is stored in the storage module 50 for a user to query and use.
  • the storage module 50 includes a plurality of storage units, such as a plurality of storage devices provided locally and / or a storage area provided in a variety of databases on the cloud
  • the execution module 30 may correspond to The business logic executors 31 of different business logic types respectively store the processing results made by the data processing module 42 corresponding to the corresponding business logic type into different types of storage units.
  • the business logic executor 31 stores the processing results made by the data processing module 42 corresponding to the first business logic type into the MangoDB database, and the business logic executor 31 corresponding to the second business logic type will correspond to the second
  • the processing result made by the data processing module 42 of each business logic type is stored in the MySQL database, and the data processing module 42 corresponding to the third business logic type is performed by the business logic executor 31 corresponding to the third business logic type.
  • the output processing results are stored in the HBase database.
  • Logic 31 performs the processing corresponding to the result of the fourth type of business logic of the data processing module 42 is made to the local storage device is stored.
  • each storage unit can be flexibly set according to requirements.
  • the storage unit can be implemented by using various storage device hardware and various forms of databases, and the storage methods are flexible and diverse. In this manner provided by this embodiment, the storage amount of a single storage unit can be saved, on the one hand, the security of storing the processing results is improved, and on the other hand, it is convenient for users to sort and arrange the processing results.
  • the large-scale picture processing method further includes the following steps:
  • This step S0 is preferably performed before the above steps S1-S5, and at least before step S3.
  • Users or other system developers can write a data processing module 42 with predefined business logic according to the possible requirements in actual work, and upload the written data processing module 42 to the serverless of the public cloud platform 40 It is stored in the computing device 41.
  • the user can query and call the data processing module 42 written or stored in advance by himself or others for processing the processing work requested by the image processing request with the corresponding business logic type.
  • the method of uploading the data processing module to the serverless computing device for storage is: integrating the data processing module into the serverless computing device in the form of a plug-in.
  • the step S3 includes:
  • the business logic of the picture processing request is divided into a plurality of business logic parts; each business logic part may correspond to a type of business logic.
  • a plurality of data processing modules respectively adapted to process the plurality of business logic parts are called from the serverless computing device of the public cloud platform.
  • multiple data processing modules can be called to decompose the image processing request with complex business logic, and the processing efficiency can be effectively improved through the simultaneous processing of multiple threads.
  • the step S4 includes:
  • step S5 includes:
  • the completion results of the processing work requested by the plurality of business logic parts are summarized into an aggregation result; the aggregation result is also That is the final processing result of the picture processing request.
  • the aggregation result is saved.
  • the execution module 30 may divide the business logic of the picture processing request into a plurality of business logic parts, and determine the multiple The respective business logic type of the business logic part. According to the business logic types of the multiple business logic parts, the execution module 30 may use a plurality of business logic executors 31 corresponding to the business logic types of the multiple business logic parts, respectively, from the public cloud platform 40
  • the serverless computing device 41 calls multiple data processing modules 42 that are respectively suitable for processing the multiple business logic parts (that is, corresponding to the business logic types of the multiple business logic parts), and then uses all The plurality of data processing modules 42 respectively complete the processing work requested by the plurality of business logic sections.
  • such a data processing method can split the business logic of a picture processing request into multiple parts, and then process the computing work of the multiple parts at the same time in multiple threads, which is beneficial to improving the data processing efficiency.
  • the final data processing result obtained by the above data processing method is still complete (that is, the complete result required by the business logic of the entire image processing request is obtained)
  • the data processing results obtained by the data processing module 42 are not immediately output and saved at this time; Until the multiple data processing modules 42 have completed the processing work requested by their respective business logic sections, the completion results of the processing work requested by the multiple business logic sections are first aggregated into aggregated results, and then The aggregation result is output and stored in the storage module 50. This can ensure that the data processing results obtained by the above multi-threaded processing method are complete.
  • the large-scale picture processing method may use the large-scale picture processing shown in FIG.
  • the system 100 implements the specific steps as follows: S00, writing a data processing module.
  • the number of data processing modules may be multiple, and different data processing modules may correspond to different types of business logic.
  • the data processing module may establish a correspondence relationship with a business logic message queue and a business logic executor based on its corresponding business logic type.
  • Each picture processing request corresponds to business logic and contains pictures to be processed.
  • S20 Determine a business logic message queue applicable to the picture processing request according to the service logic of each picture processing request. It can be understood that different business logic message queues can correspond to different types of business logic, so the business logic message queue to be stored can be determined based on the business logic of each picture processing request.
  • Each picture processing request is stored in a business logic message queue applicable to the picture processing request.
  • a plurality of data processing modules respectively adapted to process a plurality of business logic parts are called from a serverless computing device of a public cloud platform.
  • S50 Summarize the completion results of the processing jobs requested by the multiple business logic parts into an aggregation result.
  • This aggregation result is also the processing result of the image processing request.
  • the above-mentioned method provided by this embodiment does not need to set up a large number of servers to work locally by using a public cloud platform, which effectively saves framework costs and operation and maintenance costs.
  • this method can not only be easily and flexibly expanded Applications for better usability and fault tolerance; it can also easily customize the framework without being limited by platform type and storage location.
  • the present application can still stably support the workload required by the user to call the peak.
  • multi-thread simultaneous processing of picture processing requests with complex business logic is also better, which effectively improves processing efficiency.
  • An embodiment of the present application further provides a computer device, where the computer device includes a memory and a processor, where the memory is configured to store a computer program, and the processor runs the computer program to cause the computer device to perform The large-scale picture processing method according to the embodiment.
  • An embodiment of the present invention provides a computer device.
  • the computer device includes a processor 1, a memory 2, a bus 3, and a communication interface 4.
  • the processor 1, The communication interface 4 and the memory 2 are connected through a bus 3; the processor 1 is configured to execute an executable module, such as a computer program, stored in the memory 2.
  • the memory 2 may include a high-speed random access memory (RAM, Random Access Memory), and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
  • RAM Random Access Memory
  • non-volatile memory such as at least one disk memory.
  • the communication connection between the network element of the system and at least one other network element is realized through at least one communication interface 4 (which can be wired or wireless), and the Internet, a wide area network, a local network, a metropolitan area network, and the like can be used.
  • the bus 3 may be an ISA bus, a PCI bus, an EISA bus, or the like.
  • the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only a two-way arrow is used in FIG. 7, but it does not mean that there is only one bus or one type of bus.
  • the memory 2 is used to store a program, and the processor 1 executes the program after receiving an execution instruction.
  • the method executed by the apparatus defined by the flow process disclosed in any one of the foregoing embodiments of the present invention may be applied to processing.
  • the processor 1 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method may be completed by an integrated logic circuit of hardware in the processor 1 or an instruction in the form of software.
  • the above processor 1 may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc .; it may also be a Digital Signal Processor (DSP) ), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the steps of the method disclosed in combination with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or may be performed by using a combination of hardware and software modules in the decoding processor.
  • the software module may be located in a mature storage medium such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, and the like.
  • the storage medium is located in the memory 2.
  • the processor 1 reads the information in the memory 2 and completes the steps of the foregoing method in combination with its hardware.
  • An embodiment of the present application further provides a computer-readable storage medium storing the computer program stored and used in the computer device.
  • the present application essentially implements a large-scale image processing method and a corresponding system, computer device, and computer-readable storage medium based on a public cloud platform serverless computing device.
  • the characteristics of serverless computing devices on public cloud platforms are: only actual calculations are performed, and no costs are incurred; no calculations will not generate costs; at the same time, as the call volume continues to increase, the computing resources can be increased by themselves. ; With the reduction in the number of calls, the reduction of computing resources is completed on its own.
  • the serverless computing device when a user submits a large amount of image data, the serverless computing device will increase the computing resources on its own to support a sufficient amount of data processing; when the image data submitted by the user is processed, it will no longer be When there is a request sent to a serverless computing device, no computing fees will be incurred at this time.
  • this application can obtain many advantages: it does not need to set up a large number of servers to work on its own, which effectively saves framework costs and operation and maintenance costs; it can easily and flexibly expand application programs , To obtain better availability and fault tolerance; can easily implement framework customization, without being limited by platform type and storage location; at the same time, this application can still support users to call peaks on the premise of obtaining these advantages The amount of work required.
  • this application has made various improvements to the technology for processing large-scale picture data. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems in the prior art.
  • each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, which contains one or more components for implementing a specified logical function Executable instructions.
  • the functions labeled in the blocks may also occur in a different order than those labeled in the drawings.
  • each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart can be a dedicated hardware-based system that performs a specified function or action. To achieve, or can be implemented by a combination of dedicated hardware and computer instructions.
  • the functional modules or units in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
  • the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium.
  • the technical solution of this application is essentially a part that contributes to the existing technology or a part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a smart phone, a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application.
  • the foregoing storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes .

Abstract

A method and system for large-scale processing of images, a computer device, and a computer storage medium. The method for large-scale processing of images comprises the following steps: receiving an image processing request from a user (S1); storing, according to a service logic of the image processing request, the image processing request in a service logic message queue (S2); extracting the image processing request from the service logic message queue, and calling, according to the service logic of the image processing request and from data processing modules of a serverless computing device of a public cloud platform, a data processing module suitable for processing the image processing request (S3); using the data processing module to complete a processing operation requested by the image processing request (S4); and storing a completion result of the processing operation requested by the image processing request (S5).

Description

大规模图片处理方法、系统、计算机设备及计算机存储介质Large-scale picture processing method, system, computer equipment and computer storage medium
相关申请的交叉引用Cross-reference to related applications
本申请要求于2018年07月20日提交中国专利局的申请号为201810802561.1,名称为“大规模图片处理方法及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority from a Chinese patent application filed with the Chinese Patent Office on July 20, 2018 with the application number 201810802561.1, entitled "Large-scale Picture Processing Method and System", the entire contents of which are incorporated herein by reference.
技术领域Technical field
本申请涉及多媒体数据处理技术领域,特别涉及一种大规模图片处理方法、系统、计算机设备及计算机存储介质。The present application relates to the technical field of multimedia data processing, and in particular, to a large-scale picture processing method, system, computer equipment, and computer storage medium.
背景技术Background technique
在当今的网络环境中,网络服务器经常需要处理用户提交的巨量多媒体数据。考虑到用户提交多媒体数据的数量、提交的时间、以及提交的频率都是不确定的,为了能够应对诸如多个用户在同一时间段同时提交大量多媒体数据请求处理等最极端的情况,现有的用于多媒体数据的批量处理框架通常都要常备数量足够多的高性能服务器,多台高性能服务器均处于时刻待命状态。但是这种方式会导致在请求处理的数据较少的时间段内,绝大部分甚至全部待命的服务器处于无用状态,容易造成服务器资源浪费。另外,大量服务器的启动、升级、关闭以及重新分配角色都会带来极大的运维成本。In today's network environment, network servers often need to process huge multimedia data submitted by users. Considering that the amount of multimedia data submitted by users, the time of submission, and the frequency of submission are uncertain, in order to be able to cope with the most extreme situations such as multiple users submitting a large number of multimedia data requests at the same time in the same time period, the existing A batch processing framework for multimedia data usually requires a sufficient number of high-performance servers, and multiple high-performance servers are always on standby. However, this method will cause most or even all standby servers to be in a useless state during a time period when there is less data to be processed, which is likely to cause server waste. In addition, the startup, upgrade, shutdown, and reassignment of a large number of servers will bring great operation and maintenance costs.
申请内容Application content
本申请提供了一种大规模图片处理方法、系统、计算机设备及计算机存储介质,用于解决现有的多媒体数据处理技术中存在的至少一个上述问题。The present application provides a large-scale picture processing method, system, computer equipment, and computer storage medium, which are used to solve at least one of the above problems in the existing multimedia data processing technology.
根据本申请的实施方式,提供了一种大规模图片处理方法,所述方法包括以下步骤:According to an embodiment of the present application, a large-scale picture processing method is provided. The method includes the following steps:
S1,接收来自用户的图片处理请求;S1. Receive a picture processing request from a user.
S2,根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到业务逻辑消息队列中;S2. Store the picture processing request in a service logic message queue according to the service logic of the picture processing request.
S3,从所述业务逻辑消息队列中取出所述图片处理请求,并根据所述图片处理请求的业务逻辑,从公有云平台的无服务器计算设备的数据处理模块中调 用适用于处理所述图片处理请求的数据处理模块;S3. Take out the picture processing request from the business logic message queue, and call from the data processing module of the serverless computing device of the public cloud platform to process the picture processing according to the business logic of the picture processing request. Requested data processing module;
S4,使用所述数据处理模块完成所述图片处理请求所请求的处理工作;S4. Use the data processing module to complete the processing work requested by the picture processing request;
S5,保存所述图片处理请求所请求的处理工作的完成结果。S5. Save the completion result of the processing work requested by the picture processing request.
优选地,所述大规模图片处理方法还包括以下步骤:Preferably, the large-scale picture processing method further includes the following steps:
S0,编写所述数据处理模块,将所述数据处理模块上传到所述无服务器计算设备中存储,以供所述无服务器计算设备在处理所述图片请求时对所述数据处理模块进行调用。S0. Write the data processing module to upload the data processing module to the serverless computing device for storage, so that the serverless computing device can call the data processing module when processing the picture request.
优选地,所述数据处理模块采用人工智能方式进行数据处理。Preferably, the data processing module uses artificial intelligence to perform data processing.
优选地,所述数据处理模块包括机器学习算法模型、深度学习模型、以及可使用所述机器学习算法模型及深度学习模型的代码。Preferably, the data processing module includes a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
优选地,在所述步骤S0中,将所述数据处理模块上传到所述无服务器计算设备中存储的方式是:将所述数据处理模块以插件形式整合到所述无服务器计算设备中。Preferably, in the step S0, the method of uploading the data processing module to the serverless computing device for storage is: integrating the data processing module into the serverless computing device in the form of a plug-in.
优选地,在所述步骤S1中,所述图片处理请求的数量为多个;在所述步骤S2中,所述业务逻辑消息队列的数量为多个;所述步骤S2包括:Preferably, in the step S1, the number of picture processing requests is multiple; in the step S2, the number of business logic message queues is multiple; and the step S2 includes:
根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列;Determining a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request;
分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。Each picture processing request is stored separately in a business logic message queue applicable to the picture processing request.
优选地,所述步骤S3包括:Preferably, the step S3 includes:
将所述图片处理请求的业务逻辑划分为多个业务逻辑部分;Dividing the business logic of the picture processing request into a plurality of business logic parts;
根据所述多个业务逻辑部分,从所述公有云平台的所述无服务器计算设备中调用分别适用于处理所述多个业务逻辑部分的多个数据处理模块。According to the plurality of business logic parts, a plurality of data processing modules respectively adapted to process the plurality of business logic parts are called from the serverless computing device of the public cloud platform.
优选地,所述步骤S4包括:Preferably, the step S4 includes:
使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作。Use the multiple data processing modules to complete the processing work requested by the multiple business logic sections, respectively.
优选地,所述步骤S5包括:Preferably, the step S5 includes:
在使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作之后,将所述多个业务逻辑部分所请求的处理工作的完成结果汇总为聚合结果;After using the multiple data processing modules to separately complete the processing work requested by the multiple business logic parts, summarize the completion results of the processing work requested by the multiple business logic parts into an aggregated result;
保存所述聚合结果。The aggregation result is saved.
本申请的实施方式还提供一种大规模图片处理系统,所述大规模图片处理 系统包括接收模块、暂存模块、执行模块、公有云平台和存储模块;所述暂存模块包括业务逻辑消息队列;所述执行模块包括业务逻辑执行器;所述公有云平台包括无服务器计算设备,所述无服务器计算设备包括数据处理模块;其中,An embodiment of the present application further provides a large-scale image processing system, which includes a receiving module, a temporary storage module, an execution module, a public cloud platform, and a storage module; the temporary storage module includes a business logic message queue The execution module includes a business logic executor; the public cloud platform includes a serverless computing device, and the serverless computing device includes a data processing module; wherein:
所述接收模块配置成:接收来自用户的图片处理请求,以及根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到所述业务逻辑消息队列中;The receiving module is configured to: receive a picture processing request from a user, and store the picture processing request in the business logic message queue according to the business logic of the picture processing request;
所述暂存模块配置成:通过所述业务逻辑消息队列暂存所述图片处理请求;The temporary storage module is configured to temporarily store the picture processing request through the business logic message queue;
所述执行模块配置成:通过所述业务逻辑执行器从所述业务逻辑消息队列中取出所述图片处理请求,并根据所述图片处理请求的业务逻辑,从公有云平台的无服务器计算设备的数据处理模块中调用适用于处理所述图片处理请求的数据处理模块;The execution module is configured to: take the picture processing request from the business logic message queue through the business logic executor, and from the serverless computing device of the public cloud platform according to the business logic of the picture processing request The data processing module calls a data processing module adapted to process the picture processing request;
所述数据处理模块配置成:完成所述图片处理请求所请求的处理工作;The data processing module is configured to complete the processing work requested by the picture processing request;
所述存储模块配置成:保存所述图片处理请求所请求的处理工作的完成结果。The storage module is configured to save a completion result of processing work requested by the picture processing request.
优选地,所述存储模块包括多种存储装置和/或多种数据库中的存储区域。Preferably, the storage module includes a plurality of storage devices and / or storage areas in a plurality of databases.
优选地,所述数据处理模块采用人工智能方式进行数据处理。Preferably, the data processing module uses artificial intelligence to perform data processing.
优选地,所述数据处理模块包括机器学习算法模型、深度学习模型、以及可使用所述机器学习算法模型及深度学习模型的代码。Preferably, the data processing module includes a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
优选地,所述数据处理模块的数量为多个;所述业务逻辑执行器的数量为多个。Preferably, the number of the data processing modules is multiple; the number of the business logic executors is multiple.
优选地,所述接收模块进一步配置成:接收来自用户的多个图片处理请求,根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列;分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。Preferably, the receiving module is further configured to: receive multiple picture processing requests from a user, determine a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request; and process each picture request separately Stored in a business logic message queue suitable for this picture processing request.
本申请的实施方式还提供一种计算机设备,所述计算机设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述计算机设备执行根据上述各个实施方式所述的大规模图片处理方法。An embodiment of the present application further provides a computer device, where the computer device includes a memory and a processor, where the memory is configured to store a computer program, and the processor runs the computer program to cause the computer device to perform The large-scale picture processing method according to the embodiment.
本申请的实施方式还提供一种计算机可读存储介质,其存储有上述计算机设备中存储及使用的所述计算机程序。An embodiment of the present application further provides a computer-readable storage medium storing the computer program stored and used in the computer device.
依照上述的实施方式,本申请实质上是基于公有云平台的无服务器计算设备实现了大规模图片处理方法以及相应的系统、计算机设备和计算机可读存储介质。而公有云平台上的无服务器计算设备的特点是:只有进行了实际计算, 才会产生费用;没有计算则不会产生费用;同时可以随着调用量的不断加大,自行完成计算资源的增加;随着调用量的减少,自行完成计算资源的减少。因此,在本申请的技术方案中,当用户提交大量图片数据时,无服务器计算设备会自行增大计算资源,支持足够的数据处理量;当用户提交的图片数据处理完毕后,因为不会再有发送给无服务器计算设备的请求,此时就不会再有计算费用产生。这样,相比于现有的图片数据处理技术,本申请可以取得多方面的优势:不需要自己设置大量的服务器进行工作,有效地节约了框架费用和运维成本;能够方便灵活地扩展应用程序,获得更好的可用性和容错能力;能够方便地实现框架可定制化,而且不会受到平台类型和存储地点的限制;同时,本申请在取得这些优势的前提下依旧能稳定地支持用户调用峰值所需的工作量。显然,本申请对于处理大规模图片数据的技术作出了多方面的改善。由于多媒体数据中最主要的部分就是图片数据,因此本申请的大规模图片处理方法及系统对于多媒体数据处理技术领域而言是一个重大的改进,能够有效地解决现有技术中存在的问题。According to the above embodiments, the present application essentially implements a large-scale image processing method and a corresponding system, computer device, and computer-readable storage medium based on a public cloud platform serverless computing device. The characteristics of serverless computing devices on public cloud platforms are: only actual calculations are performed, and no costs will be incurred; no calculations will not generate costs; at the same time, the increase of computing resources can be completed by itself as the call volume continues to increase. ; With the reduction in the number of calls, the reduction of computing resources is completed on its own. Therefore, in the technical solution of the present application, when a user submits a large amount of image data, the serverless computing device will increase the computing resources on its own to support a sufficient amount of data processing; when the image data submitted by the user is processed, it will no longer be When there is a request sent to a serverless computing device, no computing fees will be incurred at this time. In this way, compared with the existing image data processing technology, this application can obtain many advantages: it does not need to set up a large number of servers to work on its own, which effectively saves framework costs and operation and maintenance costs; it can easily and flexibly expand application programs , To obtain better availability and fault tolerance; can easily implement framework customization, without being limited by platform type and storage location; at the same time, this application can still support users to call peaks on the premise of obtaining these advantages The amount of work required. Obviously, this application has made various improvements to the technology for processing large-scale picture data. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems in the prior art.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1示出了本申请的一个实施方式提供的大规模图片处理系统的结构方框图。FIG. 1 is a block diagram showing a structure of a large-scale picture processing system according to an embodiment of the present application.
图2示出了本申请的一个实施方式提供的大规模图片处理方法的主要步骤的流程示意图;FIG. 2 is a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application; FIG.
图3示出了本申请的一个实施方式提供的大规模图片处理方法的主要步骤的流程示意图;FIG. 3 is a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application; FIG.
图4示出了本申请的一个实施方式提供的一种计算机设备的结构示意图。FIG. 4 is a schematic structural diagram of a computer device according to an embodiment of the present application.
具体实施方式detailed description
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图结合实施例,对本申请进一步详细说明。In order to make the purpose, technical solution, and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments.
为了解决现有的多媒体数据处理技术需要采用大量服务器,造成成本过高及资源浪费等问题,本申请的实施方式提供了一种大规模图片处理方法、以及相应的用于实现该大规模图片处理方法的大规模图片处理系统。由于多媒体数据中最主要的部分就是图片数据,因此本申请的大规模图片处理方法及系统对 于多媒体数据处理技术领域而言是一个重大的改进,能够有效地解决现有技术中存在的问题。In order to solve the existing multimedia data processing technology that requires a large number of servers, causing problems such as high costs and waste of resources, the embodiments of the present application provide a large-scale picture processing method and a corresponding method for implementing the large-scale picture processing Method for large-scale picture processing system. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems existing in the prior art.
由于介绍所述大规模图片处理方法时会涉及所述大规模图片处理系统的具体部件,为了使表述的顺序清晰,以下首先基于附图中的图1对所述大规模图片处理系统的实施方式进行介绍,之后再基于图2详细介绍所述大规模图片处理方法的实施方式。Since the large-scale picture processing method will be introduced when specific components of the large-scale picture processing system are introduced, in order to make the order of expression clear, the following first describes the implementation of the large-scale picture processing system based on FIG. 1 in the accompanying drawings. An introduction is made, and then the implementation manner of the large-scale picture processing method is described in detail based on FIG. 2.
请参阅图1,其示出了本申请的一个实施方式提供的大规模图片处理系统100的结构方框图。所述大规模图片处理系统100包括接收模块10、暂存模块20、执行模块30、公有云平台40和存储模块50。Please refer to FIG. 1, which is a block diagram illustrating a structure of a large-scale picture processing system 100 according to an embodiment of the present application. The large-scale image processing system 100 includes a receiving module 10, a temporary storage module 20, an execution module 30, a public cloud platform 40, and a storage module 50.
所述接收模块10可以包括例如现有的API(Application Programming Interface,应用程序编程接口)网关,所述API网关与数量较多的实际的网络用户都建立有网络通信连接,通信连接方式可以为有线通信,也可以为无线通信。所述API网关可以从每个网络用户接收数据,例如接收来自网络用户的图片处理请求;该图片处理请求携带有网络用户希望处理的图片。API网关与网络用户建立网络通信连接以及从网络用户接收图片处理请求的方法都可以采用相关技术实现,此处无需赘述。在具体实施时,所述接收模块可配置成:接收来自用户的图片处理请求,以及根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到所述业务逻辑消息队列中。具体可进一步配置成:接收来自用户的多个图片处理请求,根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列;分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。The receiving module 10 may include, for example, an existing API (Application Programming Interface) gateway. The API gateway has a network communication connection with a larger number of actual network users, and the communication connection mode may be wired. Communication may also be wireless communication. The API gateway may receive data from each network user, for example, a picture processing request from a network user; the picture processing request carries a picture that the network user wants to process. The method for the API gateway to establish a network communication connection with a network user and to receive a picture processing request from the network user can be implemented by using related technologies, and no further description is needed here. In specific implementation, the receiving module may be configured to: receive a picture processing request from a user, and store the picture processing request in the service logic message queue according to the business logic of the picture processing request. Specifically, it may be further configured to: receive multiple picture processing requests from the user, and determine a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request; and store each picture processing request to the Picture processing request in the business logic message queue.
所述暂存模块20可以是设置在本地的暂存器模块,也可以是设置在云端(例如设置在所述公有云平台40上)上的暂存器模块,以获得更大的存储容量。所述接收模块10可以通过例如现有的有线或无线的连接方式与所述暂存模块20建立网络通信连接,并可以将从网络用户接收到的例如上述图片处理请求等数据暂存到所述暂存模块20中。所述暂存模块20中可以包括多个业务逻辑消息队列21,这些业务逻辑消息队列21可以分别对应于不同的业务逻辑类型。总体而言,业务逻辑是指一个实体单元为了向另一个实体单元提供服务,应该具备的规则与流程。业务逻辑可以主要包括有(1)领域实体。领域实体是某个领域内的各种对象的抽象体现,可以用名词表示(诸如,可以是具体名词或抽象名词甚至动名词,只要其具有名词性即可),构成了整个业务逻辑的骨骼和静态模型。通常情况下,每个领域实体都有自己的一些属性和行为。(2) 业务规则。业务规则就是某个领域内运作的规则,构成了整个业务逻辑的关键点和动态模型。业务规则作用于领域实体,领域实体遵从业务规则进行运作。(3)完整性约束。领域实体和业务规则构建了业务逻辑的主体,但在这主体之上,还存在完整性约束的限制。(4)业务流程及工作流。业务流程或工作流是启动及托管协调领域实体完成既定规则的过程。业务逻辑可以采用消息队列的形式存储在暂存队列中,不同的业务逻辑类型可以分别设置不同的消息队列。每个消息队列都可以采用异步方式运行。所述接收模块10可以根据所接收到的每个图片处理请求的具体的业务逻辑类型确定适用于该图片处理请求的业务逻辑消息队列21,然后分别将每个图片处理请求暂存到适用于该图片处理请求的业务逻辑消息队列21,也就是与该图片处理请求的业务逻辑类型相对应的业务逻辑消息队列21中。所述每个业务逻辑消息队列21都可以存储多个具有对应的业务逻辑种类的图片处理请求。The temporary storage module 20 may be a local temporary storage module or a temporary storage module provided on the cloud (for example, on the public cloud platform 40) to obtain a larger storage capacity. The receiving module 10 may establish a network communication connection with the temporary storage module 20 through, for example, an existing wired or wireless connection method, and may temporarily store data such as the above-mentioned picture processing request received from a network user to the temporary storage module 20 In the temporary storage module 20. The temporary storage module 20 may include multiple business logic message queues 21, and these business logic message queues 21 may respectively correspond to different types of business logic. In general, business logic refers to the rules and processes that an entity unit should have in order to provide services to another entity unit. Business logic can include (1) domain entities. Domain entities are abstract representations of various objects in a certain domain and can be represented by nouns (such as concrete or abstract nouns or even gerunds, as long as they are nominal), and constitute the skeleton of the entire business logic and Static model. Generally, each domain entity has its own attributes and behaviors. (2) Business rules. Business rules are rules that operate in a certain field and constitute the key points and dynamic model of the entire business logic. Business rules act on domain entities, and domain entities operate in compliance with business rules. (3) Integrity constraints. Domain entities and business rules construct the body of business logic, but on top of this body, there are also restrictions on integrity constraints. (4) Business processes and workflows. A business process or workflow is the process of initiating and hosting coordination domain entities to complete established rules. Business logic can be stored in a temporary queue in the form of a message queue. Different types of business logic can be set up with different message queues. Each message queue can run asynchronously. The receiving module 10 may determine a business logic message queue 21 applicable to the picture processing request according to the specific business logic type of each received picture processing request, and then temporarily store each picture processing request to the The business logic message queue 21 of the picture processing request, that is, the business logic message queue 21 corresponding to the business logic type of the picture processing request. Each of the business logic message queues 21 can store multiple picture processing requests with corresponding business logic types.
所述执行模块30可以通过例如现有的有线或无线的连接方式与所述暂存模块20建立网络通信连接,并从所述暂存模块20中调取数据,例如调取暂存在所述暂存模块20的所述业务逻辑消息队列21中的图片处理请求。具体而言,所述执行模块30可以包括多个业务逻辑执行器31,这些业务逻辑执行器31可以被设置成分别对应于不同的业务逻辑类型,因此也就可以基于其对应的业务逻辑类型而进一步与上述的业务逻辑消息队列21建立对应关系。每个业务逻辑执行器31可以通过例如现有的有线或无线的连接方式和与其对应的业务逻辑消息队列21建立通信,并从与其对应的业务逻辑消息队列21中取出存储在该业务逻辑消息队列21中的图片处理请求。可以理解,所述执行模块30也可以设置在云端(例如设置在所述公有云平台40)上以节省本地的资源。The execution module 30 may establish a network communication connection with the temporary storage module 20 through, for example, an existing wired or wireless connection method, and retrieve data from the temporary storage module 20, for example, temporarily save the temporary storage. The picture processing request in the business logic message queue 21 of the storage module 20 is stored. Specifically, the execution module 30 may include a plurality of business logic executors 31. These business logic executors 31 may be set to correspond to different types of business logic, and therefore may be based on their corresponding business logic types. A correspondence relationship is further established with the above-mentioned business logic message queue 21. Each business logic executor 31 may establish communication with its corresponding business logic message queue 21 through, for example, an existing wired or wireless connection method, and take out and store the business logic message queue from its corresponding business logic message queue 21 Image processing request in 21. It can be understood that the execution module 30 can also be set on the cloud (for example, on the public cloud platform 40) to save local resources.
所述公有云平台40可以是当前市场上的第三方提供商为用户提供的能够使用的云平台,负责组织协调计算资源,并根据用户的需要提供各种计算服务。公有云平台40可以包括无服务器计算设备41。其中,公有云平台即为数据处理模块。公有云一般可通过国际互联网(Internet)使用,通常是是免费或成本低廉的,其核心属性是共享资源服务,可认为是云计算的主要形态。。所述公有云平台40和其中的无服务器计算设备41的基本架构和基础工作原理都可以参照本领域中的相关技术实现,因此这里不再赘述。所述执行模块30可以通过例如现有的有线或无线的连接方式与所述公有云平台40建立网络通信连接。在本实施方式中,所述无服务器计算设备41中可以包含多个数据处理模块42,每个数据处理模块42可以采用人工智能方式进行数据处理,具体的, 每个数据处理模块42可以包括例如机器学习算法模型、深度学习模型、以及可使用所述机器学习算法模型及深度学习模型的代码等等。这些数据处理模块42可以是以插件形式整合在所述无服务器计算设备41中的业务逻辑基础单元,它们可以分别对应于不同的业务逻辑类型,因此也就可以基于其对应的业务逻辑类型而进一步与上述的业务逻辑消息队列21及业务逻辑执行器31建立对应关系。每个业务逻辑执行器31在从与其对应的业务逻辑消息队列21中取出存储在该业务逻辑消息队列21中的图片处理请求后,可以根据相应的业务逻辑类型查询到对应的数据处理模块42,然后调用该数据处理模块42完成所述图片处理请求所请求的处理工作(也就是该图片处理请求所需要的计算工作)。这样就可以把所述图片处理请求所需要的计算工作都转移到公有云平台40上的无服务器计算设备41中来执行,而不需要在本地的服务器上进行这些计算工作,从而较好地节约了本地资源。The public cloud platform 40 may be a cloud platform that can be used by users provided by third-party providers in the current market, and is responsible for organizing and coordinating computing resources and providing various computing services according to user needs. The public cloud platform 40 may include a serverless computing device 41. Among them, the public cloud platform is a data processing module. The public cloud is generally available through the Internet. It is usually free or low-cost. Its core attribute is shared resource services, which can be considered as the main form of cloud computing. . The basic architecture and basic working principle of the public cloud platform 40 and the serverless computing device 41 therein can be implemented with reference to related technologies in the art, and therefore will not be repeated here. The execution module 30 may establish a network communication connection with the public cloud platform 40 through, for example, an existing wired or wireless connection method. In this embodiment, the serverless computing device 41 may include multiple data processing modules 42. Each data processing module 42 may use artificial intelligence to perform data processing. Specifically, each data processing module 42 may include, for example, Machine learning algorithm models, deep learning models, and codes that can use the machine learning algorithm models and deep learning models, and so on. These data processing modules 42 may be business logic basic units integrated in the serverless computing device 41 in the form of plug-ins, and they may correspond to different types of business logic, so they may be further based on their corresponding business logic types. Corresponds to the business logic message queue 21 and business logic executor 31 described above. After each business logic executor 31 takes the picture processing request stored in the business logic message queue 21 from the corresponding business logic message queue 21, it can query the corresponding data processing module 42 according to the corresponding business logic type. Then, the data processing module 42 is called to complete the processing work requested by the picture processing request (that is, the calculation work required by the picture processing request). In this way, all the calculation work required for the image processing request can be transferred to the serverless computing device 41 on the public cloud platform 40 for execution, without the need to perform these calculation work on the local server, thereby saving better. Local resources.
所述存储模块50可以包括设置在本地的多种数据存储装置例如硬盘、移动硬盘等,也可以包括设置在云端(例如设置在所述公有云平台40上或者其他可获得的云端上)的一种或多种数据库(例如MangoDB数据库、MySQL数据库、HBase数据库等等)中的存储区域。The storage module 50 may include a variety of local data storage devices such as hard disks, mobile hard disks, etc., or may include one of the data storage devices (e.g., the public cloud platform 40 or other available clouds). Storage area in one or more databases (such as MangoDB database, MySQL database, HBase database, etc.).
所述执行模块30可以通过例如现有的有线或无线的连接方式与所述存储模块50建立网络通信连接。在每个所述数据处理模块42完成图片处理请求所请求的处理工作之后,所述执行模块30中相应的业务逻辑执行器31可以获取所述数据处理模块42做出的处理结果(例如图片处理请求所需的计算结果),并将该处理结果存储到所述存储模块50中,供用户查询及使用。当然,所述执行模块30中相应的业务逻辑执行器31还可以将获取的所述数据处理模块42做出的处理结果主动发送给用户。具体实现方式可以根据用户需求而灵活设定。The execution module 30 may establish a network communication connection with the storage module 50 through, for example, an existing wired or wireless connection manner. After each of the data processing modules 42 completes the processing work requested by the picture processing request, the corresponding business logic executor 31 in the execution module 30 can obtain the processing results (such as picture processing) made by the data processing module 42 Request the required calculation result), and store the processing result in the storage module 50 for query and use by the user. Of course, the corresponding business logic executor 31 in the execution module 30 may also actively send the obtained processing results made by the data processing module 42 to the user. The specific implementation manner can be flexibly set according to user needs.
请一并参阅图2,其示出了本申请的一个实施方式提供的大规模图片处理方法的主要步骤的流程示意图,该大规模图片处理方法可以用图1所示的大规模图片处理系统100来实现。该方法可以由大规模图片处理系统执行,大规模图片处理系统的一种实施方式可参见图1所示,在此不再赘述。具体的,大规模图片处理系统可以采用诸如计算机设备实现。以下详细介绍所述大规模图片处理方法的步骤:Please refer to FIG. 2 together, which illustrates a schematic flowchart of main steps of a large-scale picture processing method according to an embodiment of the present application. The large-scale picture processing method may use the large-scale picture processing system 100 shown in FIG. 1. to realise. This method may be executed by a large-scale picture processing system. For an implementation manner of the large-scale picture processing system, refer to FIG. 1, and details are not described herein again. Specifically, a large-scale picture processing system can be implemented using, for example, computer equipment. The steps of the large-scale picture processing method are detailed below:
S1,接收来自用户的图片处理请求。S1. Receive a picture processing request from a user.
在该步骤S1中,可以通过例如上述大规模图片处理系统100中的接收模 块10接收来自用户的图片处理请求,所述图片处理请求的数量可以为一个或多个;所述图片处理请求包含有用户待处理的图片,而且所述图片处理请求对应有业务逻辑类型。由于接收模块10中可以使用API网关,其能够同时接收巨量的图片数据,因此本申请的实施方式允许用户同时批量上传大量的图片处理请求,例如可以一次性地批量上传10万张、100万张、甚至1000万张图片的处理请求。In step S1, for example, the receiving module 10 in the large-scale picture processing system 100 can receive picture processing requests from users. The number of picture processing requests may be one or more. The picture processing requests include: Pictures to be processed by the user, and the picture processing request corresponds to a business logic type. Since the API module can be used in the receiving module 10, which can receive a large amount of image data at the same time, the embodiment of the present application allows users to upload a large number of image processing requests in batches at the same time. Requests for 10, or even 10 million images.
S2,根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到业务逻辑消息队列中。S2. Store the picture processing request in a service logic message queue according to the service logic of the picture processing request.
在该步骤S2中,接收模块10接收到图片处理请求(通常是大量的图片处理请求)之后,并不会立即将这些图片处理请求交给数据处理装置(例如本地服务器或云端)处理并返回处理结果,而是首先将这些图片处理请求存储到暂存模块20的业务逻辑消息队列21中进行异步处理。具体地,所述业务逻辑队列21的数量优选为多个,这些业务逻辑消息队列21可以被设置成分别对应于不同的业务逻辑类型;所述接收模块10可以根据所接收到的每个图片处理请求的具体的业务逻辑类型确定适用于该图片处理请求的业务逻辑消息队列21,然后分别将每个图片处理请求暂存到适用于该图片处理请求的业务逻辑消息队列21,也就是与该图片处理请求的业务逻辑类型相对应的业务逻辑消息队列21中。所述每个业务逻辑消息队列21都可以存储多个具有对应的业务逻辑种类的图片处理请求。In step S2, after receiving the image processing request (usually a large number of image processing requests), the receiving module 10 does not immediately hand over these image processing requests to a data processing device (such as a local server or the cloud) for processing and return to processing. As a result, these picture processing requests are first stored in the business logic message queue 21 of the temporary storage module 20 for asynchronous processing. Specifically, the number of the business logic queues 21 is preferably multiple, and these business logic message queues 21 may be set to correspond to different types of business logic, respectively; the receiving module 10 may process according to each picture received The specific business logic type of the request determines the business logic message queue 21 that is applicable to the picture processing request, and then temporarily stores each picture processing request to the business logic message queue 21 that is suitable for the picture processing request, that is, with the picture The business logic message queue 21 corresponding to the type of business logic processing the request. Each of the business logic message queues 21 can store multiple picture processing requests with corresponding business logic types.
S3,从所述业务逻辑消息队列中取出所述图片处理请求,并根据所述图片处理请求的业务逻辑,从公有云平台的无服务器计算设备的数据处理模块中调用适用于处理所述图片处理请求的数据处理模块。S3. Take out the picture processing request from the business logic message queue, and call from the data processing module of the serverless computing device of the public cloud platform to process the picture processing according to the business logic of the picture processing request. Requested data processing module.
在该步骤S3中,所述业务逻辑执行器31从与其对应的业务逻辑消息队列21中按照预定顺序(例如该业务逻辑消息队列21中的图片处理请求的存储顺序)依次取出存储在该业务逻辑消息队列21中的每个图片处理请求,然后根据取出的图片处理请求的业务逻辑从所述公有云平台40的无服务器计算设备41中查询到与该业务逻辑类型相应的数据处理模块42,调用该数据处理模块42完成所述图片处理请求所请求的处理工作(也就是该图片处理请求所需要的计算工作)。这样就可以把所述图片处理请求所需要的计算工作都转移到公有云平台40上的无服务器计算设备41中来执行,而不需要在本地的服务器上进行这些计算工作。而且由于公有云平台40上的无服务器计算设备41可以包含数量足够多的数据处理模块42,因此可以同时处理大量的图片处理请求所 请求的处理工作,处理能力非常强大,不会受到本地服务器容量的限制。而且,公有云平台40上的无服务器计算设备41可以根据图片处理请求的数量而自行调用适量的数据处理模块42,也即自行调整计算资源,在满足用户需求的同时也能够合理利用资源,避免浪费计算资源以及产生多余的计算费用。S4,使用所述数据处理模块完成所述图片处理请求所请求的处理工作。In step S3, the business logic executor 31 sequentially retrieves and stores the business logic from the corresponding business logic message queue 21 in a predetermined order (for example, the storage order of picture processing requests in the business logic message queue 21). Each picture in the message queue 21 processes a request, and then queries the data processing module 42 corresponding to the type of the business logic from the serverless computing device 41 of the public cloud platform 40 according to the business logic of the retrieved picture processing request, and calls The data processing module 42 completes the processing work requested by the picture processing request (that is, the calculation work required by the picture processing request). In this way, all the calculation work required for the picture processing request can be transferred to the serverless computing device 41 on the public cloud platform 40 for execution, without performing these calculation work on the local server. In addition, since the serverless computing device 41 on the public cloud platform 40 can include a sufficient number of data processing modules 42, it can process a large number of image processing requests at the same time. The processing power is very powerful and will not be affected by the capacity of the local server. limits. In addition, the serverless computing device 41 on the public cloud platform 40 can automatically call an appropriate amount of data processing module 42 according to the number of image processing requests, that is, adjust the computing resources on its own, while satisfying the needs of users, it can also reasonably use the resources and avoid Waste computing resources and generate extra computing costs. S4. Use the data processing module to complete the processing work requested by the picture processing request.
在该步骤S4中,各个数据处理模块42基于其对应类型的业务逻辑,依照相应的业务逻辑执行器31安排的工作顺序,分别处理与其类型相应的图片处理请求所请求的处理工作。In step S4, each data processing module 42 processes the processing work requested by the image processing request corresponding to its type based on the corresponding business logic and the work order arranged by the corresponding business logic executor 31.
S5,保存所述图片处理请求所请求的处理工作的完成结果。S5. Save the completion result of the processing work requested by the picture processing request.
在该步骤S5中,在每个所述数据处理模块42完成图片处理请求所请求的处理工作之后,所述执行模块30中相应的业务逻辑执行器31可以获取所述数据处理模块42做出的处理结果(例如图片处理请求所需的计算结果),并将该处理结果存储到所述存储模块50中,供用户查询及使用。特别地,如果所述存储模块50包含有多种存储单元,例如设置在本地的多种存储装置和/或设置在云端上的多种数据库中的存储区域,所述执行模块30可以通过对应于不同业务逻辑类型的业务逻辑执行器31分别将对应于相应业务逻辑类型的数据处理模块42做出的处理结果存储到不同类型的存储单元中,例如,可以通过对应于第一种业务逻辑类型的业务逻辑执行器31将对应于第一种业务逻辑类型的数据处理模块42做出的处理结果存储到MangoDB数据库中,通过对应于第二种业务逻辑类型的业务逻辑执行器31将对应于第二种业务逻辑类型的数据处理模块42做出的处理结果存储到MySQL数据库中,通过对应于第三种业务逻辑类型的业务逻辑执行器31将对应于第三种业务逻辑类型的数据处理模块42做出的处理结果存储到HBase数据库中,通过对应于第四种业务逻辑类型的业务逻辑执行器31将对应于第四种业务逻辑类型的数据处理模块42做出的处理结果存储到本地存储装置中。以上仅为示例性说明,不应当被视为限制,在实际应用中,每种存储单元用于存储的处理结果的类型可以根据需求而灵活设定。存储单元可以采用诸如多种存储装置硬件以及多种形式的数据库实现,存储方式灵活多样。通过本实施例提供的这种方式,可以节省单种存储单元的存储量,一方面提高了存储处理结果的安全性,在另一方面也方便用户对处理结果进行归类整理。In this step S5, after each of the data processing modules 42 completes the processing work requested by the picture processing request, the corresponding business logic executor 31 in the execution module 30 can obtain the data processing module 42 A processing result (such as a calculation result required for a picture processing request), and the processing result is stored in the storage module 50 for a user to query and use. In particular, if the storage module 50 includes a plurality of storage units, such as a plurality of storage devices provided locally and / or a storage area provided in a variety of databases on the cloud, the execution module 30 may correspond to The business logic executors 31 of different business logic types respectively store the processing results made by the data processing module 42 corresponding to the corresponding business logic type into different types of storage units. For example, the The business logic executor 31 stores the processing results made by the data processing module 42 corresponding to the first business logic type into the MangoDB database, and the business logic executor 31 corresponding to the second business logic type will correspond to the second The processing result made by the data processing module 42 of each business logic type is stored in the MySQL database, and the data processing module 42 corresponding to the third business logic type is performed by the business logic executor 31 corresponding to the third business logic type. The output processing results are stored in the HBase database. Logic 31 performs the processing corresponding to the result of the fourth type of business logic of the data processing module 42 is made to the local storage device is stored. The above is only an exemplary description, and should not be considered as a limitation. In practical applications, the type of processing results used by each storage unit can be flexibly set according to requirements. The storage unit can be implemented by using various storage device hardware and various forms of databases, and the storage methods are flexible and diverse. In this manner provided by this embodiment, the storage amount of a single storage unit can be saved, on the one hand, the security of storing the processing results is improved, and on the other hand, it is convenient for users to sort and arrange the processing results.
优选地,在一个进一步的实施方式中,所述大规模图片处理方法还包括以下步骤:Preferably, in a further embodiment, the large-scale picture processing method further includes the following steps:
S0,编写所述数据处理模块,将所述数据处理模块上传到所述无服务器计算设备中存储,以供所述无服务器计算设备在处理所述图片请求时对所述数据处理模块进行调用。S0. Write the data processing module to upload the data processing module to the serverless computing device for storage, so that the serverless computing device can call the data processing module when processing the picture request.
该步骤S0优选在上述步骤S1-S5之前,至少在步骤S3之前执行。用户或者其他的系统开发者都可以根据实际工作中可能的需求编写具有预定义的业务逻辑的数据处理模块42,并将编写的数据处理模块42上传到所述公有云平台40的所述无服务器计算设备41中进行存储。当执行所述步骤S1-S5时,用户就可以查询和调用到自己或者他人预先编写和存储的数据处理模块42,用来处理具有相应的业务逻辑类型的图片处理请求所请求的处理工作。This step S0 is preferably performed before the above steps S1-S5, and at least before step S3. Users or other system developers can write a data processing module 42 with predefined business logic according to the possible requirements in actual work, and upload the written data processing module 42 to the serverless of the public cloud platform 40 It is stored in the computing device 41. When the steps S1 to S5 are performed, the user can query and call the data processing module 42 written or stored in advance by himself or others for processing the processing work requested by the image processing request with the corresponding business logic type.
优选地,在所述步骤S0中,将所述数据处理模块上传到所述无服务器计算设备中存储的方式是:将所述数据处理模块以插件形式整合到所述无服务器计算设备中。Preferably, in the step S0, the method of uploading the data processing module to the serverless computing device for storage is: integrating the data processing module into the serverless computing device in the form of a plug-in.
考虑到图片处理请求的业务逻辑可能存在较为复杂的情况,为了能够对图片处理请求进行更为合理有效的处理,在一个进一步的实施方式中,所述步骤S3包括:Considering that the business logic of the image processing request may be more complicated, in order to be able to process the image processing request more reasonably and efficiently, in a further embodiment, the step S3 includes:
将所述图片处理请求的业务逻辑划分为多个业务逻辑部分;每个业务逻辑部分都可以对应一种业务逻辑类型。The business logic of the picture processing request is divided into a plurality of business logic parts; each business logic part may correspond to a type of business logic.
根据所述多个业务逻辑部分,从所述公有云平台的所述无服务器计算设备中调用分别适用于处理所述多个业务逻辑部分的多个数据处理模块。在这种情况下,能够调用多个数据处理模块对具有复杂业务逻辑的图片处理请求进行分解处理,通过多线程同时处理方式可有效提升处理效率。According to the plurality of business logic parts, a plurality of data processing modules respectively adapted to process the plurality of business logic parts are called from the serverless computing device of the public cloud platform. In this case, multiple data processing modules can be called to decompose the image processing request with complex business logic, and the processing efficiency can be effectively improved through the simultaneous processing of multiple threads.
在将所述图片处理请求的业务逻辑划分为多个业务逻辑部分的基础上,所述步骤S4则包括:Based on dividing the business logic of the picture processing request into a plurality of business logic parts, the step S4 includes:
使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作。Use the multiple data processing modules to complete the processing work requested by the multiple business logic sections, respectively.
由于是由多个数据处理模块对图片处理请求的业务逻辑进行分解处理,因此所述步骤S5则包括:Since the business logic of the picture processing request is decomposed and processed by multiple data processing modules, the step S5 includes:
在使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作之后,将所述多个业务逻辑部分所请求的处理工作的完成结果汇总为聚合结果;该聚合结果也即为所述图片处理请求的最终处理结果。After using the plurality of data processing modules to complete the processing work requested by the plurality of business logic parts, respectively, the completion results of the processing work requested by the plurality of business logic parts are summarized into an aggregation result; the aggregation result is also That is the final processing result of the picture processing request.
保存所述聚合结果。The aggregation result is saved.
具体而言,当某个图片处理请求的业务逻辑较为复杂时,为了提高数据处 理效率,所述执行模块30可以将该图片处理请求的业务逻辑划分为多个业务逻辑部分,分别确定该多个业务逻辑部分各自的业务逻辑类型。根据所述多个业务逻辑部分的业务逻辑类型,所述执行模块30可以通过与所述多个业务逻辑部分的业务逻辑类型相应的多个业务逻辑执行器31,分别从所述公有云平台40的所述无服务器计算设备41中调用分别适用于处理所述多个业务逻辑部分的(即分别与所述多个业务逻辑部分的业务逻辑类型相应的)多个数据处理模块42,然后使用所述多个数据处理模块42分别完成所述多个业务逻辑部分所请求的处理工作。显然,这样的数据处理方式可以将一个图片处理请求的业务逻辑拆分成多个部分,然后多线程地同时处理该多个部分的计算工作,有利于提高数据处理效率。为了确保上述数据处理方式最后得到的数据处理结果仍然是完整的(即获得了整个图片处理请求的业务逻辑所要求的完整结果),在该实施方式中,若是所述多个数据处理模块42中有一个或几个比其他的数据处理模块42更早地完成了其相应的业务逻辑部分所请求的处理工作,则此时并不立即输出和保存这部分数据处理模块42取得的数据处理结果;直到所述多个数据处理模块42分别都完成了其相应的业务逻辑部分所请求的处理工作之后,先将所述多个业务逻辑部分所请求的处理工作的完成结果汇总为聚合结果,再将所述聚合结果输出并保存到所述存储模块50中。这样就可以确保上述多线程处理方式所得到的数据处理结果是完整的。Specifically, when the business logic of a picture processing request is more complicated, in order to improve the data processing efficiency, the execution module 30 may divide the business logic of the picture processing request into a plurality of business logic parts, and determine the multiple The respective business logic type of the business logic part. According to the business logic types of the multiple business logic parts, the execution module 30 may use a plurality of business logic executors 31 corresponding to the business logic types of the multiple business logic parts, respectively, from the public cloud platform 40 The serverless computing device 41 calls multiple data processing modules 42 that are respectively suitable for processing the multiple business logic parts (that is, corresponding to the business logic types of the multiple business logic parts), and then uses all The plurality of data processing modules 42 respectively complete the processing work requested by the plurality of business logic sections. Obviously, such a data processing method can split the business logic of a picture processing request into multiple parts, and then process the computing work of the multiple parts at the same time in multiple threads, which is beneficial to improving the data processing efficiency. In order to ensure that the final data processing result obtained by the above data processing method is still complete (that is, the complete result required by the business logic of the entire image processing request is obtained), in this embodiment, if the plurality of data processing modules 42 One or more of the data processing modules 42 completed the processing work requested by their corresponding business logic part earlier than this time, then the data processing results obtained by the data processing module 42 are not immediately output and saved at this time; Until the multiple data processing modules 42 have completed the processing work requested by their respective business logic sections, the completion results of the processing work requested by the multiple business logic sections are first aggregated into aggregated results, and then The aggregation result is output and stored in the storage module 50. This can ensure that the data processing results obtained by the above multi-threaded processing method are complete.
基于前述实施方式,再参阅图3所示的本申请的另一个实施方式提供的大规模图片处理方法的主要步骤的流程示意图,该大规模图片处理方法可以用图1所示的大规模图片处理系统100来实现,具体步骤如下:S00,编写数据处理模块。数据处理模块的数量可以为多个,不同的数据处理模块可以对应不同的业务逻辑类型。Based on the foregoing embodiment, reference is again made to a schematic flowchart of main steps of a large-scale picture processing method according to another embodiment of the present application shown in FIG. 3. The large-scale picture processing method may use the large-scale picture processing shown in FIG. The system 100 implements the specific steps as follows: S00, writing a data processing module. The number of data processing modules may be multiple, and different data processing modules may correspond to different types of business logic.
S01,将所述数据处理模块以插件形式整合到无服务器计算设备中。所述数据处理模块可以基于其对应的业务逻辑类型而与业务逻辑消息队列及业务逻辑执行器建立对应关系。S01. Integrate the data processing module into a serverless computing device in the form of a plug-in. The data processing module may establish a correspondence relationship with a business logic message queue and a business logic executor based on its corresponding business logic type.
S10,接收来自用户的多个图片处理请求。每个图片处理请求都对应有业务逻辑,并包含有待处理的图片。S10. Receive multiple picture processing requests from a user. Each picture processing request corresponds to business logic and contains pictures to be processed.
S20,根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列。可以理解的是,不同的业务逻辑消息队列可以分别对应于不同的业务逻辑类型,因此可以基于每个图片处理请求的业务逻辑确定待存储的业务逻辑消息队列。S20: Determine a business logic message queue applicable to the picture processing request according to the service logic of each picture processing request. It can be understood that different business logic message queues can correspond to different types of business logic, so the business logic message queue to be stored can be determined based on the business logic of each picture processing request.
S21,分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。S21. Each picture processing request is stored in a business logic message queue applicable to the picture processing request.
S30,将图片处理请求的业务逻辑划分为多个业务逻辑部分。针对业务逻辑复杂的图片处理请求,可以将图片处理请求的业务逻辑划分为多个部分,以便于公有云平台的无服务器计算设备针对不同的部分进行多线程同时处理。S30. Divide the business logic of the picture processing request into multiple business logic parts. For the image processing request with complex business logic, the business logic of the image processing request can be divided into multiple parts, so that the serverless computing device of the public cloud platform can process multiple threads simultaneously for different parts.
S31,根据多个业务逻辑部分,从公有云平台的无服务器计算设备中调用分别适用于处理多个业务逻辑部分的多个数据处理模块。S31. According to a plurality of business logic parts, a plurality of data processing modules respectively adapted to process a plurality of business logic parts are called from a serverless computing device of a public cloud platform.
S40,使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作。通过这种方式可多线程地同时处理图片处理请求的多个部分的计算工作,有效提升了数据处理效率。S40. Use the multiple data processing modules to complete the processing tasks requested by the multiple business logic sections, respectively. In this way, multiple threads of processing of multiple parts of the image processing request can be processed simultaneously, effectively improving data processing efficiency.
S50,将所述多个业务逻辑部分所请求的处理工作的完成结果汇总为聚合结果。S50: Summarize the completion results of the processing jobs requested by the multiple business logic parts into an aggregation result.
S51,保存上述聚合结果。该聚合结果也即图片处理请求的处理结果。S51. Save the polymerization result. This aggregation result is also the processing result of the image processing request.
综上所述,本实施例提供的上述方法,通过借助公有云平台,无需本地设置大量的服务器进行工作,有效地节约了框架费用和运维成本;而且,这种方式不仅能够方便灵活地扩展应用程序,获得更好的可用性和容错能力;还能够方便地实现框架可定制化,不会受到平台类型和存储地点的限制。同时,本申请在取得这些优势的前提下依旧能稳定地支持用户调用峰值所需的工作量。此外,也能够较好地对具有复杂业务逻辑的图片处理请求进行多线程同时处理,有效提升了处理效率。In summary, the above-mentioned method provided by this embodiment does not need to set up a large number of servers to work locally by using a public cloud platform, which effectively saves framework costs and operation and maintenance costs. Moreover, this method can not only be easily and flexibly expanded Applications for better usability and fault tolerance; it can also easily customize the framework without being limited by platform type and storage location. At the same time, under the premise of obtaining these advantages, the present application can still stably support the workload required by the user to call the peak. In addition, multi-thread simultaneous processing of picture processing requests with complex business logic is also better, which effectively improves processing efficiency.
本申请的实施方式还提供一种计算机设备,所述计算机设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述计算机设备执行根据上述各个实施方式所述的大规模图片处理方法。An embodiment of the present application further provides a computer device, where the computer device includes a memory and a processor, where the memory is configured to store a computer program, and the processor runs the computer program to cause the computer device to perform The large-scale picture processing method according to the embodiment.
本发明实施例提供了一种计算机设备,参见图4所示的一种计算机设备的结构示意图,该计算机设备包括:处理器1、存储器2、总线3和通信接口4,所述处理器1、通信接口4和存储器2通过总线3连接;处理器1用于执行存储器2中存储的可执行模块,例如计算机程序。An embodiment of the present invention provides a computer device. Referring to a schematic structural diagram of a computer device shown in FIG. 4, the computer device includes a processor 1, a memory 2, a bus 3, and a communication interface 4. The processor 1, The communication interface 4 and the memory 2 are connected through a bus 3; the processor 1 is configured to execute an executable module, such as a computer program, stored in the memory 2.
其中,存储器2可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口4(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。The memory 2 may include a high-speed random access memory (RAM, Random Access Memory), and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory. The communication connection between the network element of the system and at least one other network element is realized through at least one communication interface 4 (which can be wired or wireless), and the Internet, a wide area network, a local network, a metropolitan area network, and the like can be used.
总线3可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。The bus 3 may be an ISA bus, a PCI bus, an EISA bus, or the like. The bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only a two-way arrow is used in FIG. 7, but it does not mean that there is only one bus or one type of bus.
其中,存储器2用于存储程序,所述处理器1在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器1中,或者由处理器1实现。The memory 2 is used to store a program, and the processor 1 executes the program after receiving an execution instruction. The method executed by the apparatus defined by the flow process disclosed in any one of the foregoing embodiments of the present invention may be applied to processing. Processor 1, or implemented by processor 1.
处理器1可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2,处理器1读取存储器2中的信息,结合其硬件完成上述方法的步骤。The processor 1 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method may be completed by an integrated logic circuit of hardware in the processor 1 or an instruction in the form of software. The above processor 1 may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc .; it may also be a Digital Signal Processor (DSP) ), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. Various methods, steps, and logical block diagrams disclosed in the embodiments of the present invention may be implemented or executed. A general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in combination with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or may be performed by using a combination of hardware and software modules in the decoding processor. The software module may be located in a mature storage medium such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, and the like. The storage medium is located in the memory 2. The processor 1 reads the information in the memory 2 and completes the steps of the foregoing method in combination with its hardware.
本申请的实施方式还提供一种计算机可读存储介质,其存储有上述计算机设备中存储及使用的所述计算机程序。An embodiment of the present application further provides a computer-readable storage medium storing the computer program stored and used in the computer device.
依照上述的实施方式,本申请实质上是基于公有云平台的无服务器计算设备实现了大规模图片处理方法以及相应的系统、计算机设备和计算机可读存储介质。而公有云平台上的无服务器计算设备的特点是:只有进行了实际计算,才会产生费用;没有计算则不会产生费用;同时可以随着调用量的不断加大,自行完成计算资源的增加;随着调用量的减少,自行完成计算资源的减少。因此,在本申请的技术方案中,当用户提交大量图片数据时,无服务器计算设备会自行增大计算资源,支持足够的数据处理量;当用户提交的图片数据处理完毕后,因为不会再有发送给无服务器计算设备的请求,此时就不会再有计算费用产生。这样,相比于现有的图片数据处理技术,本申请可以取得多方面的优 势:不需要自己设置大量的服务器进行工作,有效地节约了框架费用和运维成本;能够方便灵活地扩展应用程序,获得更好的可用性和容错能力;能够方便地实现框架可定制化,而且不会受到平台类型和存储地点的限制;同时,本申请在取得这些优势的前提下依旧能稳定地支持用户调用峰值所需的工作量。显然,本申请对于处理大规模图片数据的技术作出了多方面的改善。由于多媒体数据中最主要的部分就是图片数据,因此本申请的大规模图片处理方法及系统对于多媒体数据处理技术领域而言是一个重大的改进,能够有效地解决现有技术中存在的问题。According to the above embodiments, the present application essentially implements a large-scale image processing method and a corresponding system, computer device, and computer-readable storage medium based on a public cloud platform serverless computing device. The characteristics of serverless computing devices on public cloud platforms are: only actual calculations are performed, and no costs are incurred; no calculations will not generate costs; at the same time, as the call volume continues to increase, the computing resources can be increased by themselves. ; With the reduction in the number of calls, the reduction of computing resources is completed on its own. Therefore, in the technical solution of the present application, when a user submits a large amount of image data, the serverless computing device will increase the computing resources on its own to support a sufficient amount of data processing; when the image data submitted by the user is processed, it will no longer be When there is a request sent to a serverless computing device, no computing fees will be incurred at this time. In this way, compared with the existing image data processing technology, this application can obtain many advantages: it does not need to set up a large number of servers to work on its own, which effectively saves framework costs and operation and maintenance costs; it can easily and flexibly expand application programs , To obtain better availability and fault tolerance; can easily implement framework customization, without being limited by platform type and storage location; at the same time, this application can still support users to call peaks on the premise of obtaining these advantages The amount of work required. Obviously, this application has made various improvements to the technology for processing large-scale picture data. Since the most important part of multimedia data is picture data, the large-scale picture processing method and system of the present application is a major improvement in the field of multimedia data processing technology, and can effectively solve the problems in the prior art.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may also be implemented in other ways. The device embodiments described above are only schematic. For example, the flowcharts and structure diagrams in the drawings show the possible architectures and functions of the devices, methods, and computer program products according to various embodiments of the present application. And operation. In this regard, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, which contains one or more components for implementing a specified logical function Executable instructions. It should also be noted that in alternative implementations, the functions labeled in the blocks may also occur in a different order than those labeled in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, can be a dedicated hardware-based system that performs a specified function or action. To achieve, or can be implemented by a combination of dedicated hardware and computer instructions.
另外,在本申请各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。In addition, the functional modules or units in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application is essentially a part that contributes to the existing technology or a part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a smart phone, a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application. The foregoing storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes .
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。The above are only preferred embodiments of this application, and are not intended to limit this application. Any modification, equivalent replacement, or improvement made within the spirit and principles of this application shall be included in this application Within the scope of protection.
工业实用性:Industrial applicability:
通过应用本申请的技术方案,不需要自己设置大量的服务器进行工作,有效地节约了框架费用和运维成本;能够方便灵活地扩展应用程序,获得更好的可用性和容错能力;能够方便地实现框架可定制化,而且不会受到平台类型和存储地点的限制;同时,本申请在取得这些优势的前提下依旧能稳定地支持用户调用峰值所需的工作量。By applying the technical solution of the present application, there is no need to set up a large number of servers to work by itself, which effectively saves framework costs and operation and maintenance costs; can easily and flexibly expand applications, and obtain better availability and fault tolerance; The framework can be customized and is not limited by the type of platform and storage location. At the same time, this application can still support the workload required by users to call the peak on the premise of obtaining these advantages.

Claims (17)

  1. 一种大规模图片处理方法,包括以下步骤:A large-scale picture processing method includes the following steps:
    S1,接收来自用户的图片处理请求;S1. Receive a picture processing request from a user.
    S2,根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到业务逻辑消息队列中;S2. Store the picture processing request in a service logic message queue according to the service logic of the picture processing request.
    S3,从所述业务逻辑消息队列中取出所述图片处理请求,并根据所述图片处理请求的业务逻辑,从公有云平台的无服务器计算设备的数据处理模块中调用适用于处理所述图片处理请求的数据处理模块;S3. Take out the picture processing request from the business logic message queue, and call from the data processing module of the serverless computing device of the public cloud platform to process the picture processing according to the business logic of the picture processing request. Requested data processing module;
    S4,使用所述数据处理模块完成所述图片处理请求所请求的处理工作;S4. Use the data processing module to complete the processing work requested by the picture processing request;
    S5,保存所述图片处理请求所请求的处理工作的完成结果。S5. Save the completion result of the processing work requested by the picture processing request.
  2. 如权利要求1所述的大规模图片处理方法,其特征在于,还包括以下步骤:The method for processing large-scale pictures according to claim 1, further comprising the following steps:
    S0,编写所述数据处理模块,将所述数据处理模块上传到所述无服务器计算设备中存储,以供所述无服务器计算设备在处理所述图片请求时对所述数据处理模块进行调用。S0. Write the data processing module to upload the data processing module to the serverless computing device for storage, so that the serverless computing device can call the data processing module when processing the picture request.
  3. 如权利要求2所述的大规模图片处理方法,其特征在于,所述数据处理模块采用人工智能方式进行数据处理。The large-scale picture processing method according to claim 2, wherein the data processing module uses artificial intelligence to perform data processing.
  4. 如权利要求3所述的大规模图片处理方法,其特征在于,所述数据处理模块包括机器学习算法模型、深度学习模型、以及可使用所述机器学习算法模型及深度学习模型的代码。The large-scale image processing method according to claim 3, wherein the data processing module comprises a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
  5. 如权利要求2所述的大规模图片处理方法,其特征在于,在所述步骤S0中,将所述数据处理模块上传到所述无服务器计算设备中存储的方式是:将所述数据处理模块以插件形式整合到所述无服务器计算设备中。The method for large-scale picture processing according to claim 2, wherein in the step S0, a method for uploading the data processing module to the serverless computing device for storage is: uploading the data processing module Integrated into the serverless computing device in the form of a plug-in.
  6. 如权利要求1所述的大规模图片处理方法,其特征在于,在所述步骤S1中,所述图片处理请求的数量为多个;在所述步骤S2中,所述业务逻辑消息队列的数量为多个;所述步骤S2包括:The large-scale picture processing method according to claim 1, wherein in the step S1, the number of the picture processing requests is plural; in the step S2, the number of the business logic message queues There are multiple; the step S2 includes:
    根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列;Determining a business logic message queue applicable to the picture processing request according to the business logic of each picture processing request;
    分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。Each picture processing request is stored separately in a business logic message queue applicable to the picture processing request.
  7. 如权利要求6所述的大规模图片处理方法,其特征在于,所述步骤S3 包括:The method for processing a large-scale picture according to claim 6, wherein the step S3 comprises:
    将所述图片处理请求的业务逻辑划分为多个业务逻辑部分;Dividing the business logic of the picture processing request into a plurality of business logic parts;
    根据所述多个业务逻辑部分,从所述公有云平台的所述无服务器计算设备中调用分别适用于处理所述多个业务逻辑部分的多个数据处理模块。According to the plurality of business logic parts, a plurality of data processing modules respectively adapted to process the plurality of business logic parts are called from the serverless computing device of the public cloud platform.
  8. 如权利要求7所述的大规模图片处理方法,其特征在于,所述步骤S4包括:The large-scale picture processing method according to claim 7, wherein the step S4 comprises:
    使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作。Use the multiple data processing modules to complete the processing work requested by the multiple business logic sections, respectively.
  9. 如权利要求8所述的大规模图片处理方法,其特征在于,所述步骤S5包括:The large-scale picture processing method according to claim 8, wherein the step S5 comprises:
    在使用所述多个数据处理模块分别完成所述多个业务逻辑部分所请求的处理工作之后,将所述多个业务逻辑部分所请求的处理工作的完成结果汇总为聚合结果;After using the multiple data processing modules to separately complete the processing work requested by the multiple business logic parts, summarize the completion results of the processing work requested by the multiple business logic parts into an aggregated result;
    保存所述聚合结果。The aggregation result is saved.
  10. 一种大规模图片处理系统,所述大规模图片处理系统包括接收模块、暂存模块、执行模块、公有云平台和存储模块;所述暂存模块包括业务逻辑消息队列;所述执行模块包括业务逻辑执行器;所述公有云平台包括无服务器计算设备,所述无服务器计算设备包括数据处理模块;其中,A large-scale picture processing system, the large-scale picture processing system includes a receiving module, a temporary storage module, an execution module, a public cloud platform, and a storage module; the temporary storage module includes a business logic message queue; and the execution module includes a service A logic executor; the public cloud platform includes a serverless computing device, and the serverless computing device includes a data processing module; wherein:
    所述接收模块配置成:接收来自用户的图片处理请求,以及根据所述图片处理请求的业务逻辑,将所述图片处理请求存储到所述业务逻辑消息队列中;The receiving module is configured to: receive a picture processing request from a user, and store the picture processing request in the business logic message queue according to the business logic of the picture processing request;
    所述暂存模块配置成:通过所述业务逻辑消息队列暂存所述图片处理请求;The temporary storage module is configured to temporarily store the picture processing request through the business logic message queue;
    所述执行模块配置成:通过所述业务逻辑执行器从所述业务逻辑消息队列中取出所述图片处理请求,并根据所述图片处理请求的业务逻辑,从公有云平台的无服务器计算设备的数据处理模块中调用适用于处理所述图片处理请求的数据处理模块;The execution module is configured to: take the picture processing request from the business logic message queue through the business logic executor, and from the serverless computing device of the public cloud platform according to the business logic of the picture processing request The data processing module calls a data processing module adapted to process the picture processing request;
    所述数据处理模块配置成:完成所述图片处理请求所请求的处理工作;The data processing module is configured to complete the processing work requested by the picture processing request;
    所述存储模块配置成:保存所述图片处理请求所请求的处理工作的完成结果。The storage module is configured to save a completion result of processing work requested by the picture processing request.
  11. 如权利要求10所述的大规模图片处理系统,其特征在于,所述存储模块包括多种存储装置和/或多种数据库中的存储区域。The large-scale picture processing system according to claim 10, wherein the storage module comprises a plurality of storage devices and / or storage areas in a plurality of databases.
  12. 如权利要求10所述的大规模图片处理系统,其特征在于,所述数据 处理模块采用人工智能方式进行数据处理。The large-scale picture processing system according to claim 10, wherein the data processing module uses artificial intelligence to perform data processing.
  13. 如权利要求12所述的大规模图片处理系统,其特征在于,所述数据处理模块包括机器学习算法模型、深度学习模型、以及可使用所述机器学习算法模型及深度学习模型的代码。The large-scale image processing system according to claim 12, wherein the data processing module comprises a machine learning algorithm model, a deep learning model, and code that can use the machine learning algorithm model and the deep learning model.
  14. 如权利要求10所述的大规模图片处理系统,其特征在于,所述数据处理模块的数量为多个;所述业务逻辑执行器的数量为多个。The large-scale picture processing system according to claim 10, wherein the number of the data processing modules is plural; and the number of the business logic executors is plural.
  15. 如权利要求10所述的大规模图片处理系统,其特征在于,所述接收模块进一步配置成:接收来自用户的多个图片处理请求,根据每个图片处理请求的业务逻辑确定适用于该图片处理请求的业务逻辑消息队列;分别将每个图片处理请求存储到适用于该图片处理请求的业务逻辑消息队列中。The large-scale picture processing system according to claim 10, wherein the receiving module is further configured to: receive multiple picture processing requests from a user, and determine that the picture processing is applicable to the picture processing according to the business logic of each picture processing request Requested business logic message queue; each picture processing request is stored separately in a business logic message queue that is applicable to the picture processing request.
  16. 一种计算机设备,其特征在于:所述计算机设备包括存储器以及处理器,所述存储器配置成存储计算机程序,所述处理器运行所述计算机程序以使所述计算机设备执行如权利要求1-9中的任一项所述的大规模图片处理方法。A computer device, characterized in that the computer device includes a memory and a processor, the memory is configured to store a computer program, and the processor runs the computer program to cause the computer device to execute the claims 1-9 The large-scale picture processing method according to any one of the above.
  17. 一种计算机可读存储介质,其特征在于:存储有如权利要求10至15中任一项所述的计算机设备中存储及使用的所述计算机程序。A computer-readable storage medium, characterized in that the computer program stored and used in the computer device according to any one of claims 10 to 15 is stored.
PCT/CN2018/104643 2018-07-20 2018-09-07 Method and system for large-scale processing of images, computer device, and computer storage medium WO2020015087A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810802561.1A CN108920281A (en) 2018-07-20 2018-07-20 Extensive image processing method and system
CN201810802561.1 2018-07-20

Publications (1)

Publication Number Publication Date
WO2020015087A1 true WO2020015087A1 (en) 2020-01-23

Family

ID=64414869

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/104643 WO2020015087A1 (en) 2018-07-20 2018-09-07 Method and system for large-scale processing of images, computer device, and computer storage medium

Country Status (2)

Country Link
CN (1) CN108920281A (en)
WO (1) WO2020015087A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111381977A (en) * 2018-12-29 2020-07-07 北大方正集团有限公司 Message processing method and device
CN112702368B (en) * 2019-10-22 2023-05-09 贵州白山云科技股份有限公司 Service request processing method and device
CN112732417A (en) * 2019-10-28 2021-04-30 北京京东振世信息技术有限公司 Method and device for processing application request
CN113269856A (en) * 2021-05-12 2021-08-17 南京邮电大学 Data parallel visualization graph rendering method and system based on distributed cloud storage

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120072914A1 (en) * 2010-09-17 2012-03-22 Canon Kabushiki Kaisha Cloud computing system and method for controlling same
CN102523246A (en) * 2011-11-23 2012-06-27 陈刚 Cloud computation treating system and method
CN103106680A (en) * 2013-02-16 2013-05-15 赞奇科技发展有限公司 Implementation method for three-dimensional figure render based on cloud computing framework and cloud service system
CN103559239A (en) * 2013-10-25 2014-02-05 北京奇虎科技有限公司 Image processing method and system and task server
CN106201723A (en) * 2016-07-13 2016-12-07 浪潮(北京)电子信息产业有限公司 The resource regulating method of a kind of data center and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098503B (en) * 2009-12-14 2012-11-28 中兴通讯股份有限公司 Method and device for decoding image in parallel by multi-core processor
CN104537682B (en) * 2015-01-26 2018-09-07 四川众亿得科技有限责任公司 A kind of segmentation of medical image and dispatching method
CN105321201A (en) * 2015-11-26 2016-02-10 郭小虎 Cloud light baking-based mobile terminal 3D real-time rendering method and system
CN106897127A (en) * 2015-12-21 2017-06-27 北京奇虎科技有限公司 A kind of method and server for picture capture treatment
CN106502794B (en) * 2016-10-24 2019-10-11 深圳市彬讯科技有限公司 A kind of efficient rendering method of 3 d effect graph based on cloud rendering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120072914A1 (en) * 2010-09-17 2012-03-22 Canon Kabushiki Kaisha Cloud computing system and method for controlling same
CN102523246A (en) * 2011-11-23 2012-06-27 陈刚 Cloud computation treating system and method
CN103106680A (en) * 2013-02-16 2013-05-15 赞奇科技发展有限公司 Implementation method for three-dimensional figure render based on cloud computing framework and cloud service system
CN103559239A (en) * 2013-10-25 2014-02-05 北京奇虎科技有限公司 Image processing method and system and task server
CN106201723A (en) * 2016-07-13 2016-12-07 浪潮(北京)电子信息产业有限公司 The resource regulating method of a kind of data center and device

Also Published As

Publication number Publication date
CN108920281A (en) 2018-11-30

Similar Documents

Publication Publication Date Title
WO2020015087A1 (en) Method and system for large-scale processing of images, computer device, and computer storage medium
KR102428293B1 (en) Network accessible machine learning model training and hosting system
US9063918B2 (en) Determining a virtual interrupt source number from a physical interrupt source number
CN110249312B (en) Method and system for converting data integration jobs from a source framework to a target framework
CN111400000A (en) Network request processing method, device, equipment and storage medium
WO2022048204A1 (en) Image generation method and apparatus, electronic device, and computer readable storage medium
WO2021022714A1 (en) Message processing method for cross-block chain node, device, apparatus and medium
CN111158888A (en) Multi-task scheduling method and device
WO2023206889A1 (en) Model inference methods and apparatuses, devices, and storage medium
CN111814959A (en) Model training data processing method, device and system and storage medium
CN111694643B (en) Task scheduling execution system and method for graph neural network application
CN111124644B (en) Method, device and system for determining task scheduling resources
CN114416310A (en) Multiprocessor load balancing method, computing device and storage medium
CN113094125B (en) Business process processing method, device, server and storage medium
US11055223B2 (en) Efficient cache warm up based on user requests
WO2022257247A1 (en) Data processing method and apparatus, and computer-readable storage medium
CN111143461A (en) Mapping relation processing system and method and electronic equipment
CN115935909A (en) File generation method and device and electronic equipment
CN114356713A (en) Thread pool monitoring method and device, electronic equipment and storage medium
CN115081607A (en) Reverse calculation method, device and equipment based on embedded operator and storage medium
CN110837419B (en) Reasoning engine system and method based on elastic batch processing and electronic equipment
CN109150993B (en) Method for obtaining network request tangent plane, terminal device and storage medium
US11340949B2 (en) Method and node for managing a request for hardware acceleration by means of an accelerator device
CN112367205A (en) Processing method and scheduling system for HTTP scheduling request
CN111597200A (en) Data processing method, device and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18926702

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18926702

Country of ref document: EP

Kind code of ref document: A1