Cloud edge product collaboration system and server
By designing a multi-level server structure and collaboration mechanism in the cloud-edge product collaboration system, the multi-level collaboration problem in traditional technology is solved, the efficient synchronization and deployment of products among multi-level servers are achieved, the efficiency of data processing and application deployment is improved, and the flexibility and scalability of the system are enhanced.
Patent Information
- Application Number
- CN202510793134.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-13
- Publication Date
- 2025-09-16
AI Technical Summary
Traditional cloud-edge product collaboration technology is difficult to meet the needs of multi-level collaboration in complex application scenarios, especially how to achieve efficient and flexible three-level collaboration in a three-level management architecture has become an urgent problem to be solved.
A cloud-edge product collaboration system is provided, including multi-level servers, where the first-level server deploys the product service unit, the last-level server deploys the product proxy unit, and the intermediate-level server deploys the product service unit and the product proxy unit. Through the collaborative work of the product service unit and the product proxy unit, multi-level synchronization and deployment of product metadata and image files are achieved, and a network bandwidth assistance mechanism and an authorization verification mechanism are adopted to ensure efficient distribution and storage.
It achieves efficient collaboration of products among multi-level servers, meets multi-level system requirements in complex application scenarios, improves the efficiency of data processing and application deployment, enhances the flexibility and scalability of the system, and avoids the risk of information damage when stored in the same warehouse.
Smart Images

Figure CN120658738A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud-edge collaboration technology, and in particular to a cloud-edge product collaboration system, server, computer-readable storage medium, and computer program product. Background Art
[0002] An artifact can be understood as a set of applications that can be deployed in a specific computing environment. As organizations scale, their computing architectures evolve into multi-tiered architectures. Artifacts need to be efficiently transferred, adapted, and collaborated across different tiers, creating a need for cloud-edge artifact collaboration technology.
[0003] However, traditional cloud-edge product collaboration technology mainly focuses on single-level or simple two-level collaboration, which is difficult to meet the needs of multi-level collaboration in complex application scenarios. Summary of the Invention
[0004] Based on this, it is necessary to provide a cloud-edge product collaboration system, server, computer-readable storage medium and computer program product to address the above technical problems.
[0005] The present application provides a cloud-edge product collaboration system, which includes a multi-level server;
[0006] The first-level server is deployed with a product service unit, the last-level server is deployed with a product proxy unit, and the middle-level server is deployed with a product service unit and a product proxy unit; each level of server is deployed with a data warehouse and a product warehouse;
[0007] In two adjacent servers of a multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of the current level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server; the product proxy unit of the lower-level server stores the received product metadata in the data warehouse of the current level and stores the received product image file in the product warehouse;
[0008] When the product proxy unit of a non-first-level server receives a deployment command from the product service unit of the corresponding upper-level server, the product proxy unit of the non-first-level server determines the product metadata to be deployed stored in the data warehouse of this level according to the deployment command, determines the product image file to be deployed stored in the product warehouse of this level according to the product metadata to be deployed, and deploys the product at this level according to the product image file to be deployed.
[0009] In one embodiment, the data warehouse and artifact warehouse of the intermediate-level server are shared by the artifact service unit and artifact proxy unit of the current level.
[0010] In one embodiment, in two adjacent servers of a multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of the current level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server, specifically including:
[0011] In the two adjacent servers of the multi-level server, the product service unit of the upper-level server determines whether its available network bandwidth resources are sufficient to send the product metadata stored in the data warehouse of this level and the product image files stored in the product warehouse to each lower-level server under its management within the set time;
[0012] If not, the product service unit of the upper-level server sends a product dispatch assistance request to the product service unit of the upper-level server;
[0013] If the product service unit of the upper-level server agrees to the product dispatch assistance request, it will cooperate with the product service unit of the upper-level server to send the product metadata and product image file to the product proxy unit of each lower-level server managed by the upper-level server.
[0014] In one embodiment, if the product service unit of the upper-level server agrees to the product dispatch assistance request, the product service unit of the upper-level server collaborates with the product service unit of the upper-level server to send the product metadata and the product image file to the product proxy unit of each lower-level server managed by the upper-level server, specifically including:
[0015] The product service unit of the upper-level server sends a collaborative distribution consent message to the product service unit of the upper-level server;
[0016] The product service unit of the upper-level server parses the collaborative distribution consent message to obtain the network bandwidth resources that can be provided by the upper-level server and the duration for assisting distribution. Then, based on the minimum duration between the duration for assisting distribution and the set duration, and the network bandwidth resources that can be provided by the upper-level server, the number of lower-level servers that the upper-level server is responsible for distributing is determined;
[0017] The product service unit of the upper-level server determines the routing information of a corresponding number of lower-level servers among the lower-level servers managed by itself according to the number of lower-level servers that the upper-level server is responsible for distributing, and feeds back the routing information to the upper-level server;
[0018] The product service unit of the upper-level server sends the corresponding product metadata and product image file to the product proxy unit of the corresponding lower-level server according to the received routing information;
[0019] The product service unit of the upper-level server sends the corresponding product metadata and product image file to the product proxy units of other lower-level servers.
[0020] In one embodiment, the number of lower-level servers that the upper-level server is responsible for distributing is determined based on the minimum duration of the distribution assistance duration and the set duration, and the network bandwidth resources available to the upper-level server, specifically including:
[0021] Determine the maximum number of distributions per unit time of the network bandwidth resources that can be provided by the upper-level server based on the product metadata and the size of the product image file;
[0022] Determine the minimum duration between the duration for assisting distribution and the set duration;
[0023] The number of lower-level servers that the upper-level server is responsible for is obtained according to the maximum distribution quantity and the minimum distribution duration of the network bandwidth resources that can be provided by the upper-level server within a unit time.
[0024] In one embodiment, the product service unit of the upper-level server sends its own authorization information to the upper-level server;
[0025] The product service unit of the upper-level server sends the authorization information when sending the product metadata and the product image file to the product proxy unit of the corresponding lower-level server;
[0026] After the product agent unit of the corresponding lower-level server passes the verification based on the authorization information, it stores the received product metadata in the data warehouse of this level and stores the received product image file in the product warehouse.
[0027] In one embodiment, the upper-level server is a non-primary server.
[0028] The present application provides a server including a memory and a processor. The server is a server included in the cloud-edge product collaboration system as introduced in the above embodiment.
[0029] The present application provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps involved in the cloud-edge product collaboration system introduced in the above embodiment are implemented.
[0030] The present application provides a computer program product having a computer program stored thereon. When the computer program is executed by a processor, the steps involved in the cloud-edge product collaboration system introduced in the above embodiment are implemented.
[0031] The cloud-edge product collaboration system provided in the present application includes multi-level servers, the first-level server is deployed with a product service unit, the last-level server is deployed with a product proxy unit, and the middle-level server is deployed with a product service unit and a product proxy unit; each level of server is deployed with a data warehouse and a product warehouse; in the two adjacent levels of the multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of this level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server; the product proxy unit of the lower-level server stores the received product metadata in the data warehouse of this level, and stores the received product image file in the product warehouse; when the product proxy unit of the non-first-level server receives the deployment command of the product service unit of the corresponding upper-level server, the product proxy unit of the non-first-level server determines the product metadata to be deployed stored in the data warehouse of this level according to the deployment command, determines the product image file to be deployed stored in the product warehouse of this level according to the product metadata to be deployed, and deploys the product at this level according to the product image file to be deployed. With the help of the solution provided in this application, products can be coordinated at three levels or above to meet the multi-level system requirements in complex application scenarios; in addition, this solution designs product service units and product agent units to decouple the related processing of multi-level collaboration of products, which is convenient for subsequent developers to adjust and optimize; in addition, the product metadata and product image files are stored in different warehouses to avoid the situation where the warehouse is damaged and all information is damaged when they are stored in the same warehouse. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0033] Figure 1 This is an architectural diagram of three-level product synchronization in one embodiment;
[0034] Figure 2 An architectural diagram of a three-level product deployment in one embodiment;
[0035] Figure 3 A schematic diagram of a process for collaboratively distributing products in one embodiment;
[0036] Figure 4 An architectural diagram of two-level artifact synchronization in one embodiment;
[0037] Figure 5 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0038] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0039] The cloud-edge product collaboration system provided in this application includes multi-level servers. When the cloud-edge product collaboration system includes multi-level servers, the first-level server is deployed with a product service unit, the last-level server is deployed with a product agent unit, and the intermediate-level server is deployed with a product service unit and a product agent unit; each level of server is deployed with a data warehouse and a product warehouse.
[0040] Figure 1 In the example shown, the cloud-edge product collaboration system includes three levels of servers. Figure 1 As shown, the first-level server (belonging to the first-level server) is deployed with a product service unit, the second-level server (belonging to the middle-level server) is deployed with a product service unit and a product agent unit, and the third-level server (belonging to the last-level server) is deployed with a product agent unit; the first-level server, the second-level server and the third-level server are all deployed with corresponding data warehouses and product warehouses.
[0041] Artifacts can be understood as applications that can be deployed in a specific runtime environment (such as Kubernetes). Artifacts include artifact metadata and artifact image files. Artifact metadata includes information such as the artifact name, version, description, change log, and operating instructions. Artifact image files can be understood as executable programs.
[0042] Artifact collaboration includes two parts: artifact synchronization and artifact deployment. Artifact synchronization refers to synchronizing artifacts (including artifact metadata and artifact image files) to servers at all levels. Artifact deployment refers to deploying artifacts in the runtime environment of servers at the corresponding level after they have been synchronized to servers at all levels. Deployment can be understood as running an application.
[0043] The functions of the product service unit mainly include:
[0044] (1) Manage products, including adding (in this system, adding products is called putting products on the shelf), deleting, and modifying products. When a product is put on the shelf, the product service unit is responsible for writing the product metadata to the data warehouse and pushing the product image file to the product warehouse.
[0045] (2) Interact with the product agent unit of the lower-level server to synchronize the product to the lower-level server. The synchronized information includes product metadata and product image files.
[0046] The main functions of the product proxy unit include: interacting with the product service unit of the upper-level server to synchronize products to the local server where the product proxy unit is located. The product proxy unit is responsible for writing product metadata to the data warehouse of the local server and pushing product image files to the product warehouse of the local server.
[0047] The data warehouse is mainly used to store the product metadata received by the corresponding level server, and the product warehouse is mainly used to store the product image files received by the corresponding level server.
[0048] In two adjacent servers of a multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of this level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server; the product proxy unit of the lower-level server stores the received product metadata in the data warehouse of this level and stores the received product image file in the product warehouse.
[0049] by Figure 1 Three levels of servers are shown as an example.
[0050] Level 1 users can provide artifacts (including artifact metadata and artifact image files) to the Level 1 server's artifact service unit and list the artifacts through the Level 1 server's artifact service unit. The Level 1 server's artifact service unit stores the artifact metadata in the Level 1 server's data warehouse and the artifact image files in the Level 1 server's artifact warehouse.
[0051] When product synchronization is required, the product service unit of the primary server can obtain product metadata from the data warehouse of the primary server and product image files from the product warehouse of the primary server, and send the obtained product metadata and product image files to the product agent unit of the secondary server.
[0052] The product agent unit of the secondary server stores the received product metadata in the data warehouse of the secondary server, and stores the received product image file in the product warehouse of the secondary server.
[0053] The product service unit of the secondary server can obtain product metadata from the data warehouse of the secondary server, obtain product image files from the product warehouse of the secondary server, and send the obtained product metadata and product image files to the product agent unit of the tertiary server.
[0054] The product agent unit of the third-level server stores the received product metadata in the data warehouse of the third-level server, and stores the received product image file in the product warehouse of the third-level server.
[0055] Through the above steps, you can synchronize the products from the primary server to the secondary and tertiary servers. After the product synchronization is completed, you can enter the product deployment phase.
[0056] When the product proxy unit of a non-first-level server receives a deployment command from the product service unit of the corresponding upper-level server, the product proxy unit of the non-first-level server determines the product metadata to be deployed stored in the data warehouse of this level according to the deployment command, determines the product image file to be deployed stored in the product warehouse of this level according to the product metadata to be deployed, and deploys the product at this level according to the product image file to be deployed.
[0057] by Figure 1 Three levels of servers are shown as an example.
[0058] Reference Figure 2 The user corresponding to the first level can issue a deployment command to the product agent unit of the second level server through the product service unit of the first level server. The deployment command may include information such as the name and version of the product to be deployed. The product agent unit of the second level server determines the product metadata to be deployed stored in the data warehouse of the second level server based on the information carried in the deployment command, determines the product image file to be deployed that matches the product metadata to be deployed in the product warehouse of the second level server, and deploys the product in the operating environment of the second level server.
[0059] The product service unit of the primary server can periodically send messages to the product proxy unit of the secondary server to query the product deployment status.
[0060] The user corresponding to the second level can issue a deployment command to the product agent unit of the third level server through the product service unit of the second level server. The deployment command may include information such as the name and version of the product to be deployed. The product agent unit of the third level server determines the product metadata to be deployed stored in the data warehouse of the third level server based on the information carried in the deployment command, determines the product image file to be deployed that matches the product metadata to be deployed in the product warehouse of the third level server, and deploys the product in the operating environment of the third level server.
[0061] The product service unit of the secondary server can periodically send messages to the product agent unit of the tertiary server to query the product deployment status.
[0062] With the help of the solution provided in this application, products can be coordinated at three levels or above to meet the multi-level system requirements in complex application scenarios; in addition, this solution designs product service units and product agent units to decouple the related processing of multi-level collaboration of products, which is convenient for subsequent developers to adjust and optimize; in addition, the product metadata and product image files are stored in different warehouses to avoid the situation where the warehouse is damaged and all information is damaged when they are stored in the same warehouse.
[0063] In one embodiment, the data warehouse and artifact warehouse of the intermediate-level server are shared by the artifact service unit and artifact proxy unit of the current level.
[0064] by Figure 1 Taking the three-level server as an example, the second-level server is an intermediate-level server. Its data warehouse and artifact warehouse are shared by its artifact service unit and artifact proxy unit. Therefore, after the artifact metadata and artifact image files sent by the first-level server's artifact service unit are stored in the data warehouse and artifact warehouse by the second-level server's artifact proxy unit, the second-level server's artifact service unit can also obtain the artifact metadata and artifact image files, thereby synchronizing the artifact metadata and artifact image files to the third-level server.
[0065] In one embodiment, in two adjacent servers of a multi-level server, the product service unit of the upper server sends the product metadata stored in the data warehouse of the current level and the product image file stored in the product warehouse to the product proxy unit of the lower server, specifically including: Figure 3 The steps shown are:
[0066] In step S301, among two adjacent servers in a multi-level server, the product service unit of the upper-level server determines whether its own available network bandwidth resources are sufficient to send the product metadata stored in the data warehouse of this level and the product image files stored in the product warehouse to each lower-level server managed by itself within the set time period; in step S302, if not, the product service unit of the upper-level server sends a product dispatch assistance request to the product service unit of the upper-level server; in step S303, if the product service unit of the upper-level server agrees to the product dispatch assistance request, it cooperates with the product service unit of the upper-level server to send the product metadata and product image files to the product agent unit of each lower-level server managed by the upper-level server.
[0067] Among them, the upper-level server is a non-primary server.
[0068] by Figure 1 Taking the three-level server as an example, in the scenario where artifacts are synchronized from the second-level server to the third-level server, the second-level server belongs to the upper-level server, the third-level server belongs to the lower-level server, and the first-level server belongs to the upper-level server.
[0069] The product service unit of the secondary server determines whether its own available network bandwidth resources are sufficient to send the product metadata stored in the data warehouse of this level and the product image files stored in the product warehouse to each tertiary server managed by it within the set time; for example, the number of tertiary servers managed by the secondary server is 120. When the product service unit of the secondary server is preparing to synchronize the product metadata and product image files of a certain product to the tertiary server, it can first obtain its own current available network bandwidth resources and determine whether its own current available network bandwidth resources are sufficient to send the product metadata and product image files to 120 tertiary servers within the set time (such as two minutes).
[0070] If the product service unit of the secondary server determines that its current available network bandwidth resources are insufficient to send the product metadata and product image files to 120 tertiary servers within the set time (such as two minutes), it can send a product dispatch assistance request to the product service unit of the primary server.
[0071] After receiving a request for assistance with product dispatch, the primary server's product service unit can determine, based on its own circumstances, whether to assist the secondary server's product service unit in distributing product metadata and product image files. If the primary server's product service unit determines it can assist, it will collaborate with the secondary server's product service unit to send the product metadata and product image files to the product proxy units on the 120 tertiary servers.
[0072] In this embodiment, in the scenario where the product is synchronized from the upper-level server to the lower-level server, when the product service unit of the upper-level server determines that its own available network bandwidth resources are insufficient to send the product metadata stored in the data warehouse at this level and the product image file stored in the product warehouse to each lower-level server managed by itself within the set time period, it can request assistance from the upper-level server, thereby cooperating with the product service unit of the upper-level server to send the product metadata and product image file to the product agent unit of each lower-level server, thereby improving the product synchronization efficiency.
[0073] In one embodiment, if the product service unit of the upper-level server agrees to the product dispatch assistance request, it collaborates with the product service unit of the upper-level server to send the product metadata and the product image file to the product proxy unit of each lower-level server managed by the upper-level server, specifically including:
[0074] The product service unit of the upper-level server sends a collaborative distribution consent message to the product service unit of the upper-level server; the product service unit of the upper-level server parses the collaborative distribution consent message, obtains the network bandwidth resources that can be provided by the upper-level server and the duration that can assist in distribution, and then determines the number of subordinate servers that the upper-level server is responsible for distributing based on the minimum duration between the duration that can assist in distribution and the set duration, as well as the network bandwidth resources that can be provided by the upper-level server; the product service unit of the upper-level server determines the routing information of the corresponding number of subordinate servers among the subordinate servers managed by itself based on the number of subordinate servers that the upper-level server is responsible for distributing, and feeds it back to the upper-level server; the product service unit of the upper-level server sends the corresponding product metadata and product image file to the product agent unit of the corresponding subordinate server according to the received routing information; the product service unit of the upper-level server sends the corresponding product metadata and product image file to the product agent units of other subordinate servers.
[0075] As in the above example, after receiving the product dispatch assistance request, the product service unit of the primary server can determine whether to assist the product service unit of the secondary server in distributing the product metadata and product image files based on its own actual situation.
[0076] If the product service unit of the primary server determines that it can assist, it can send a collaborative distribution consent message to the product service unit of the secondary server to indicate its agreement to assist in distributing the product metadata and product image files.
[0077] The product service unit of the first-level server can write the size of the network bandwidth resources it can provide (which can be called the provided network bandwidth resources) and the duration of distribution assistance in the collaborative distribution consent message.
[0078] The product service unit of the secondary server parses the collaborative distribution consent message to obtain the network bandwidth resources available and the distribution assistance time of the primary server.
[0079] The product service unit of the secondary server can determine the minimum duration between the distribution assistance duration and the set duration, and determine the number of subordinate servers that the primary server is responsible for distributing, such as 30, based on the minimum duration and the network bandwidth resources available to the primary server.
[0080] The product service unit of the secondary server can determine 30 third-level servers from the 120 third-level servers it manages, obtain corresponding routing information, and feed the routing information back to the product service unit of the primary server.
[0081] Based on the 30 received routing information, the product service unit of the first-level server sends the product metadata and product image files to the product proxy units of the corresponding 30 third-level servers. The product service unit of the second-level server sends the product metadata and product image files to the product proxy units of the other third-level servers (90 in total). The product metadata sent by the product service unit of the first-level server and the product service unit of the second-level server are the same, both obtained from the data warehouse of their respective levels. The product image files sent by the product service unit of the first-level server and the product service unit of the second-level server are the same, both obtained from the product warehouse of their respective levels.
[0082] In this embodiment, in the scenario where the product is synchronized from the upper-level server to the lower-level server, the product service unit of the upper-level server and the product service unit of the upper-level server can collaboratively distribute the product to the lower-level server. Moreover, in the process of collaborative distribution, the size of the network bandwidth resources that the upper-level server can provide and the length of time it can assist in distribution are fully considered, so as to reasonably determine the quantity that the upper-level server is responsible for distributing, and avoid excessive occupation of the processing resources of the upper-level server.
[0083] In one embodiment, the number of lower-level servers that the upper-level server is responsible for distributing is determined based on the minimum duration between the available distribution assistance duration and the set duration, and the available network bandwidth resources of the upper-level server, specifically including:
[0084] Based on the product metadata and the size of the product image file, determine the maximum number of distributions per unit time of the network bandwidth resources that the upper-level server can provide; determine the minimum duration between the assisted distribution time and the set duration; based on the maximum number of distributions per unit time and the minimum duration of the network bandwidth resources that the upper-level server can provide, obtain the number of subordinate servers that the upper-level server is responsible for.
[0085] As in the above example, after receiving the collaborative distribution consent message from the product service unit of the primary server, the product service unit of the secondary server parses the collaborative distribution consent message to obtain the network bandwidth resources that can be provided by the primary server and the duration of distribution assistance.
[0086] The product service unit of the secondary server can determine the size of the product metadata and product image files that need to be assisted in distribution, and based on this size, determine the maximum distribution quantity that the network bandwidth resources that the primary server can provide within a unit time; for example, the network bandwidth resources that the primary server can provide can distribute product metadata and product image files of this size to a maximum of 15 third-level servers within a unit time (such as one minute), then the maximum distribution quantity that the network bandwidth resources that the primary server can provide within a unit time is 15.
[0087] The product service unit of the secondary server can also determine the minimum duration between the assisted distribution time and the set time. For example, if the assisted distribution time is three minutes and the set time is two minutes, the minimum duration is two minutes.
[0088] The product service unit of the secondary server multiplies the maximum distribution quantity of the network bandwidth resources that can be provided by the primary server in unit time by the minimum duration. The result is the number of third-level servers that the primary server is responsible for. When the maximum distribution quantity is 15 and the minimum duration is two minutes, the number of third-level servers that the primary server is responsible for is 30.
[0089] In one embodiment, the product service unit of the upper-level server sends its own authorization information to the upper-level server;
[0090] The product service unit of the upper-level server sends authorization information when sending product metadata and product image files to the product agent unit of the corresponding lower-level server; after the product agent unit of the corresponding lower-level server verifies the authorization information, it stores the received product metadata in the data warehouse at this level and stores the received product image files in the product warehouse.
[0091] As in the above example, in the scenario where the product is synchronized from the secondary server to the tertiary server, the secondary server belongs to the upper-level server, the tertiary server belongs to the lower-level server, and the primary server belongs to the upper-level server. The server that the tertiary server usually directly connects to is the secondary server. In the scenario of collaborative distribution, some tertiary servers are directly connected to the primary server. The primary server is not a server that is usually directly connected. These tertiary servers need to distinguish whether the received product metadata and product image files are compliant, so as to avoid receiving illegal product metadata and product image files that may cause viruses in the system. Therefore, this embodiment introduces an authorization verification mechanism.
[0092] Specifically, the product service unit of the secondary server sends its own authorization information to the product service unit of the primary server. This authorization information is pre-negotiated between the secondary server and the tertiary server it manages. The product service unit of the primary server can also send the authorization information when sending product metadata and product image files to the product proxy units of the corresponding 30 tertiary servers. After the corresponding product proxy unit of each tertiary server verifies the authorization information, it determines that the received product metadata and product image files are compliant, and stores the received product metadata in the data warehouse of the server at this level, and stores the received product image files in the product warehouse of the server at this level.
[0093] In order to better understand the above embodiments, an application example of the cloud-edge product collaboration system of the present application is described in detail below.
[0094] With the rapid development of information technology, cloud computing and edge computing have each demonstrated unique advantages in data processing and application deployment. Cloud computing, with its powerful computing capabilities and abundant storage resources, provides users with on-demand access to services; while edge computing, deployed close to data sources, effectively reduces network latency and improves the real-time nature of data processing. However, traditional cloud-edge collaboration technologies primarily focus on single-level or simple two-level collaboration, making them inadequate for the multi-level collaboration required in complex application scenarios. In particular, achieving efficient and flexible three-level collaboration within a three-level management architecture remains a pressing challenge.
[0095] This embodiment provides a three-level product collaboration system based on cloud-edge collaboration technology to achieve efficient and flexible collaboration between the three levels and improve the efficiency of data processing and application deployment.
[0096] like Figure 1 As shown, the first-level server is deployed with a product service unit, the second-level server is deployed with a product service unit and a product proxy unit, and the third-level server is deployed with a product proxy unit; the first-level server, the second-level server, and the third-level server are all deployed with corresponding data warehouses and product warehouses. The data warehouse and product warehouse of the second-level server are shared by the product service unit and the product proxy unit of the second-level server. Therefore, after the product metadata and product image files sent by the product service unit of the first-level server are stored in the data warehouse and product warehouse respectively by the product proxy unit of the second-level server, the product service unit of the second-level server can also obtain the product metadata and product image files, thereby synchronizing the product metadata and product image files to the third-level server.
[0097] Artifacts can be understood as applications that can be deployed in a specific runtime environment (such as Kubernetes). Artifacts include artifact metadata and artifact image files. Artifact metadata includes information such as the artifact name, version, description, change log, and operating instructions. Artifact image files can be understood as executable programs.
[0098] Artifact collaboration includes two parts: artifact synchronization and artifact deployment. Artifact synchronization refers to synchronizing artifacts (including artifact metadata and artifact image files) to servers at all levels. Artifact deployment refers to deploying artifacts in the runtime environment of servers at the corresponding level after they have been synchronized to servers at all levels. Deployment can be understood as running an application.
[0099] The functions of the product service unit mainly include:
[0100] (1) Manage products, including adding (in this system, adding products is called putting products on the shelf), deleting, and modifying products. When a product is put on the shelf, the product service unit is responsible for writing the product metadata to the data warehouse and pushing the product image file to the product warehouse.
[0101] (2) Interact with the product agent unit of the lower-level server to synchronize the product to the lower-level server. The synchronized information includes product metadata and product image files.
[0102] The main functions of the product proxy unit include: interacting with the product service unit of the upper-level server to synchronize products to the local server where the product proxy unit is located. The product proxy unit is responsible for writing product metadata to the data warehouse of the local server and pushing product image files to the product warehouse of the local server.
[0103] The data warehouse is mainly used to store the product metadata received by the corresponding level server, and the product warehouse is mainly used to store the product image files received by the corresponding level server.
[0104] First, product synchronization:
[0105] Level 1 users can provide artifacts (including artifact metadata and artifact image files) to the Level 1 server's artifact service unit and list the artifacts through the Level 1 server's artifact service unit. The Level 1 server's artifact service unit stores the artifact metadata in the Level 1 server's data warehouse and the artifact image files in the Level 1 server's artifact warehouse.
[0106] When product synchronization is required, the product service unit of the primary server can obtain product metadata from the data warehouse of the primary server and product image files from the product warehouse of the primary server, and send the obtained product metadata and product image files to the product agent unit of the secondary server.
[0107] The product agent unit of the secondary server stores the received product metadata in the data warehouse of the secondary server, and stores the received product image file in the product warehouse of the secondary server.
[0108] The product service unit of the secondary server can obtain product metadata from the data warehouse of the secondary server, obtain product image files from the product warehouse of the secondary server, and send the obtained product metadata and product image files to the product agent unit of the tertiary server.
[0109] The product agent unit of the third-level server stores the received product metadata in the data warehouse of the third-level server, and stores the received product image file in the product warehouse of the third-level server.
[0110] Second, product deployment:
[0111] The user corresponding to the first level can issue a deployment command to the product proxy unit of the second level server through the product service unit of the first level server. The deployment command may include information such as the name and version of the product to be deployed. Based on the information carried in the deployment command, the product proxy unit of the second level server determines the metadata of the product to be deployed stored in the data warehouse of the second level server, determines the product image file to be deployed that matches the metadata of the product to be deployed in the product warehouse of the second level server, and deploys the product in the operating environment of the second level server.
[0112] The product service unit of the primary server can periodically send messages to the product proxy unit of the secondary server to query the product deployment status.
[0113] The user corresponding to the second level can issue a deployment command to the product agent unit of the third level server through the product service unit of the second level server. The deployment command may include information such as the name and version of the product to be deployed. The product agent unit of the third level server determines the product metadata to be deployed stored in the data warehouse of the third level server based on the information carried in the deployment command, determines the product image file to be deployed that matches the product metadata to be deployed in the product warehouse of the third level server, and deploys the product in the operating environment of the third level server.
[0114] The product service unit of the secondary server can periodically send messages to the product agent unit of the tertiary server to query the product deployment status.
[0115] Among them, users can put products on the secondary server. At this time, the products are degraded from the third-level synchronization to the second-level synchronization. The corresponding architecture is as follows: Figure 4 shown.
[0116] This embodiment provides a three-level collaboration solution, where the products on the first level can be synchronized to the second level first, and then synchronized from the second level to the third level. Users can deploy products on the second and third levels respectively according to their needs. Through three-level collaboration, products on the first level can be used on the third level, improving the efficiency of data processing and application deployment. This embodiment enhances the flexibility and scalability of the system, and facilitates customized deployment according to different application scenarios. During the second-level synchronization, only the product service unit of the second-level server and the product proxy unit of the third-level server need to be deployed to improve configuration efficiency. The deployment situation during the three-level synchronization is as follows: Figure 1 This embodiment improves the real-time performance and accuracy of data processing, and provides a strong guarantee for decision support.
[0117] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0118] The present application provides a server including a memory and a processor, wherein the server is a server included in the cloud-edge product collaboration system as described in the above embodiment. The server can be Figure 5 The computer device shown is implemented. The computer device includes a processor, a memory, an input / output interface (I / O) and a communication interface. The processor, the memory and the input / output interface are connected via a system bus, and the communication interface is connected to the system bus via the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store the data involved in the above embodiments. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, the steps involved in the above embodiments are implemented.
[0119] Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0120] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps involved in the cloud-edge product collaboration system introduced in the above embodiment are implemented.
[0121] In one embodiment, a computer program product is provided, on which a computer program is stored, and the computer program is executed by a processor to perform the steps involved in the cloud-edge product collaboration system introduced in the above embodiment.
[0122] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0123] Those skilled in the art will appreciate that all or part of the processes in the above embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the above embodiments. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.
[0124] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0125] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A cloud-edge product collaboration system, characterized by: The cloud-edge product collaboration system includes multiple levels of servers; The first-level server is deployed with a product service unit, the last-level server is deployed with a product proxy unit, and the middle-level server is deployed with a product service unit and a product proxy unit; Each level of server is deployed with a data warehouse and a product warehouse; In two adjacent servers of the multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of the current level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server; The product agent unit of the lower-level server stores the received product metadata in the data warehouse of the same level and stores the received product image file in the product warehouse; When the product proxy unit of a non-first-level server receives a deployment command from the product service unit of the corresponding upper-level server, the product proxy unit of the non-first-level server determines the product metadata to be deployed stored in the data warehouse of this level according to the deployment command, determines the product image file to be deployed stored in the product warehouse of this level according to the product metadata to be deployed, and deploys the product at this level according to the product image file to be deployed.
2. The system according to claim 1, wherein: The data warehouse and product warehouse of the intermediate-level server are shared by the product service unit and product agent unit at this level.
3. The system according to claim 1, wherein: In two adjacent servers of a multi-level server, the product service unit of the upper-level server sends the product metadata stored in the data warehouse of the current level and the product image file stored in the product warehouse to the product proxy unit of the lower-level server, specifically including: In the two adjacent servers of the multi-level server, the product service unit of the upper-level server determines whether its available network bandwidth resources are sufficient to send the product metadata stored in the data warehouse of this level and the product image files stored in the product warehouse to each lower-level server under its management within the set time; If not, the product service unit of the upper-level server sends a product dispatch assistance request to the product service unit of the upper-level server; If the product service unit of the upper-level server agrees to the product dispatch assistance request, it will cooperate with the product service unit of the upper-level server to send the product metadata and product image file to the product proxy unit of each lower-level server managed by the upper-level server.
4. The system according to claim 3, characterized in that If the product service unit of the upper-level server agrees to the product dispatch assistance request, the product service unit of the upper-level server cooperates with the product service unit of the upper-level server to send the product metadata and the product image file to the product proxy unit of each lower-level server managed by the upper-level server, specifically including: The product service unit of the upper-level server sends a collaborative distribution consent message to the product service unit of the upper-level server; The product service unit of the upper-level server parses the collaborative distribution consent message to obtain the network bandwidth resources that can be provided by the upper-level server and the duration for assisting distribution. Then, based on the minimum duration between the duration for assisting distribution and the set duration, and the network bandwidth resources that can be provided by the upper-level server, the number of lower-level servers that the upper-level server is responsible for distributing is determined; The product service unit of the upper-level server determines the routing information of a corresponding number of lower-level servers among the lower-level servers managed by itself according to the number of lower-level servers that the upper-level server is responsible for distributing, and feeds back the routing information to the upper-level server; The product service unit of the upper-level server sends the corresponding product metadata and product image file to the product proxy unit of the corresponding lower-level server according to the received routing information; The product service unit of the upper-level server sends the corresponding product metadata and product image file to the product proxy units of other lower-level servers.
5. The system according to claim 4, characterized in that Determining the number of lower-level servers that the upper-level server is responsible for distributing based on the minimum duration of the distribution assistance duration and the set duration, and the network bandwidth resources available to the upper-level server, specifically including: Determine the maximum number of distributions per unit time of the network bandwidth resources that can be provided by the upper-level server based on the product metadata and the size of the product image file; Determine the minimum duration between the duration for assisting distribution and the set duration; The number of lower-level servers that the upper-level server is responsible for is obtained according to the maximum distribution quantity and the minimum distribution duration of the network bandwidth resources that can be provided by the upper-level server within a unit time.
6. The system according to claim 4, characterized in that The product service unit of the upper-level server sends its own authorization information to the upper-level server; The product service unit of the upper-level server sends the authorization information when sending the product metadata and the product image file to the product proxy unit of the corresponding lower-level server; After the product agent unit of the corresponding lower-level server passes the verification based on the authorization information, it stores the received product metadata in the data warehouse of this level and stores the received product image file in the product warehouse.
7. The system according to any one of claims 3 to 6, characterized in that The upper-level server is a non-primary server.
8. A server comprising a memory and a processor, characterized in that: The server is a server included in the cloud-edge product collaboration system as described in any one of claims 1 to 7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, it implements the steps involved in the cloud-edge product collaborative system described in any one of claims 1 to 7.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, it implements the steps involved in the cloud-edge product collaborative system described in any one of claims 1 to 7.