Resource Allocation Method, Apparatus, and Storage Medium
The method addresses the high resource consumption in the Internet of Things by using automatic deployment resources to streamline resource allocation in the service layer, reducing the need for frequent interactions and improving efficiency.
Patent Information
- Application Number
- JP2021509768
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2018-08-22
- Filing Date
- 2019-08-21
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2039-08-21
AI Technical Summary
In the Internet of Things, the current methods for resource allocation in the service layer require frequent interactions between the application layer and the service layer, leading to high bandwidth and computing resource consumption.
A method and apparatus for resource allocation that involves creating an automatic deployment resource with placement rules, allowing for the identification and placement of target resources based on deployment rule information, thereby reducing the need for frequent interactions between layers.
This approach reduces the consumption of bandwidth and computing resources by allowing the application layer to perform resource allocation operations efficiently through the use of automatic deployment resources, thereby improving resource placement efficiency.
Smart Images

Figure 0007687946000001 
Figure 0007687946000002 
Figure 0007687946000003
Abstract
Description
Technical Field
[0001] Related Application This application claims the right of Chinese Patent Application No. 201810962868.8 filed on August 22, 2018, and hereby incorporates the entire disclosure content of the above Chinese patent application as part of this application by reference.
[0002] This disclosure relates to the technical field of the Internet of Things, and particularly to a method, apparatus, and storage medium for resource allocation.
Background Art
[0003] Currently, in the Internet of Things, when creating a child resource for a target resource or performing an allocation on the attributes of a target resource, a request is made from the application layer to the service layer. The service layer queries the target resource according to the request, obtains the target resource information, and returns it to the application layer. The application layer makes corresponding operation requests (such as creation requests, update requests, deletion requests, etc.) to the service layer based on the target resource information, for example, to create a child resource for the target resource and update the attributes of the target resource. When performing such operations on multiple target resources, the application layer needs to interact with the service layer and perform related processing for each individual target resource every time. In response, the service layer needs to perform corresponding processing such as queries every time. Such interactions occupy a lot of bandwidth resources between the application layer and the service layer. Also, such processing puts great pressure on the computing resources of the application layer and the service layer.
Summary of the Invention
Means for Solving the Problems
[0004] According to one aspect of the present disclosure, a method for placing resources is provided. The method includes receiving a request for creating a resource, including placement rules for automatic placement of target resources; creating an automatic deployment resource including deployment rule information obtained based on the placement rules included in the request in response to the request; and identifying target resources to be placed based on the deployment rule information and performing resource placement on the identified target resources.
[0005] In an embodiment, the deployment rule information includes all the deployment rules included in the deployment information. Alternatively, the deployment rule information includes deployment rules obtained by performing at least one operation of deletion, modification, or addition on the deployment rules included in the request.
[0006] In an embodiment, the deployment rule information includes identity information indicating target resources to be placed. The identity information includes filtering usage information. Identifying target resources to be placed based on the deployment rule information includes determining whether to identify the target resources according to filtering criteria based on the filtering usage information.
[0007] In an embodiment, determining whether to identify the target resources according to filtering criteria based on the filtering usage information includes identifying the target resources according to filtering criteria when the filtering usage information indicates a match, and determining all resources as target resources or identifying target resources according to target resource matching information included in the deployment rule information when the filtering usage information indicates no match.
[0008] In one embodiment, the placement rule information includes identity information for identifying the target resources to be placed. The identity information includes target resource matching information. Identifying the target resources to be placed includes obtaining target resource characteristics indicating the target resources from the target resource matching information, and identifying the target resources based on the target resource characteristics.
[0009] In one embodiment, the target resource characteristics include one or more of the type of the target resource, the label of the target resource, and the creator of the target resource.
[0010] In one embodiment, identifying the target resources based on the target resource characteristics includes matching the characteristics of the selectable resources with the target resource characteristics, and determining the selectable resources whose characteristics match the target resource characteristics as the target resources.
[0011] In one embodiment, the placement rule information further includes deployment information for limiting how to automatically place. The deployment information includes deployment type information and deployment operation information. Placing the identified target resources includes determining the type of the object to be deployed for the target resources based on the deployment type information, and performing a corresponding deployment operation on the object of the determined type based on the deployment operation information.
[0012] In one embodiment, the deployment information further includes attribute deployment information. Automatically placing for the identified target resources includes indicating that the type of the object to be deployed is an attribute in response to the deployment type information, and performing placement on the corresponding attributes of the target resources based on the attribute deployment information and the deployment operation information.
[0013] In one embodiment, the deployment information further includes child resource placement information. Automatically placing for the identified target resource indicates that the type of the object to be deployed is a child resource in response to the deployment type information, and includes placing the corresponding child resources of the target resource based on the child resource placement information.
[0014] In one embodiment, the placement rule information further includes deployment information for limiting how to automatically place, the deployment information includes placement policy information, and automatically placing for the identified target resource includes performing resource placement under the control of the placement policy information.
[0015] In one embodiment, the target resource is at least one of a resource already created before the creation of the automatic deployment resource and a resource newly created after the creation of the automatic deployment resource.
[0016] According to another aspect of the present disclosure, a method for placing resources is provided. The method includes establishing a placement rule for automatic placement of a target resource, and sending a resource creation request including the placement rule for creating an automatic deployment resource.
[0017] According to a further aspect of the present disclosure, an apparatus for placing resources is provided. The apparatus includes a receiving module configured to receive a request for creating a resource including a placement rule for automatic placement of a target resource, a resource creation module configured to create an automatic deployment resource including placement rule information obtained based on the placement rule included in the request in response to the request, and a resource placement module configured to identify a target resource to be placed based on the placement rule information and perform resource placement for the identified target resource.
[0018] In one embodiment, the placement rule information includes identity information indicating a target resource to be placed, and the identity information includes filtering usage information. The resource placement module is configured to determine whether to identify a target resource placed according to filtering criteria based on the filtering usage information.
[0019] In one embodiment, the placement rule information includes identity information indicating a target resource to be placed, and the identity information includes target resource matching information. The resource placement module is configured to obtain target resource features indicating a target resource from the target resource matching information and identify the target resource based on the target resource features.
[0020] In one embodiment, the placement rule information further includes deployment information for limiting how to automatically place, and the deployment information includes deployment type information and deployment operation information. The resource placement module is configured to determine the type of the object to be deployed for the target resource based on the deployment type information and perform a corresponding deployment operation on the determined type of object based on the deployment operation information.
[0021] In one embodiment, the deployment information includes attribute deployment information. The resource placement module is configured to indicate that the type of the object to be deployed is an attribute in response to the deployment type information, and place the corresponding attribute of the target resource based on the attribute placement information and the deployment operation information.
[0022] In one embodiment, the deployment information includes the deployment information of child resources. The resource allocation module is configured to indicate that the type of the object to be allocated is a child resource in response to the deployment type information, and to allocate the corresponding child resources of the target resource based on the child resource allocation information and the deployment operation information.
[0023] In one embodiment, the allocation rule information further includes deployment information for limiting how to automatically allocate, and the deployment information includes deployment policy information. The resource allocation module is configured to perform the resource allocation under the control of the deployment policy information.
[0024] According to another aspect of the present disclosure, an apparatus for allocating resources is provided. The apparatus includes an allocation information establishment module configured to establish an allocation rule for automatic allocation of target resources, and a transmission module configured to transmit a resource creation request including the allocation rule for creating an automatic deployment resource.
[0025] According to another aspect of the present disclosure, a computing device for allocating resources is provided. The computing device includes a memory storing executable instructions, and a processor configured to execute the executable instructions to implement the steps of the above-described method.
[0026] According to another aspect of the present disclosure, a computer storage medium is provided. The computer storage medium is for storing computer-readable instructions that cause the processor to implement the steps of the above method when executed by the processor.
Brief Description of the Drawings
[0027] Referring to the drawings and describing specific embodiments in detail, the above and other features and advantages of the present disclosure will become more prominent.
[0028]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
DETAILED DESCRIPTION OF THE INVENTION
[0029] In the following description, for the purpose of explanation and not limitation, specific details of the disclosed embodiments such as system structure, interface, and technology are described to clearly and thoroughly understand the present disclosure. However, it can be easily understood by those skilled in the art that the present disclosure can be implemented by other embodiments that do not deviate significantly from the spirit and scope of the present disclosure and that precisely match the details described herein. Also, in this specification, for the sake of simplicity and clarity, detailed descriptions of well-known devices, circuits, and methods are omitted to avoid unnecessary details and possible confusion.
[0030] The network of things can be divided into a sensing layer, a network layer, a service layer, and an application layer. The sensing layer is composed of various sensors. The sensors include sensing terminals such as infrared sensors, electronic labels, card readers, and sensors. The sensing layer is for object recognition and information collection in the network of things. The network layer consists of various networks such as the Internet, a television network, a network management system, and a cloud computing platform, and conducts the transmission and processing of the information obtained by the sensing layer. Much of the information generated by the sensing layer converges to the service layer via the network layer. The service layer effectively integrates and utilizes the collected information. The application layer is the interface between the network of things and the user, and realizes the intelligent application of the Internet of things in combination with the needs of the industry.
[0031] According to an embodiment of the present disclosure, a resource allocation plan for reducing or alleviating problems in related technologies is provided. According to the resource allocation plan, in the service layer, automatic deployment resources for automating resource allocation can be installed. In this way, the application layer can complete the allocation operation for a plurality of target resources by using the automatic deployment resources only by making a single operation request to the service layer, so as to reduce the consumption of resources (including bandwidth and computing resources) of the application layer and the service layer.
[0032] FIG. 1 shows a schematic diagram of an environment applicable to an embodiment of the present disclosure. As shown in FIG. 1, the environment may include an application entity (AE) 110 and a common service entity (CSE) 120.
[0033] The application entity 110 can set an allocation rule 101 for automatic allocation of target resources. The allocation rule may be customized by the application entity 110 and may include, for example, one or more rules indicating allocation conditions and / or allocation criteria related to the automatic allocation.
[0034] After the placement rules are established, for example, the application entity 110 sends a resource creation request to the common service entity 120. The resource creation request includes the established placement rules and selectable instructions for creating automatically deployed resources.
[0035] The common service entity 120 performs process 103 on the received resource creation request. The common service entity 120 can create automatically deployed resources based on the resource creation request and perform resource placement using the automatically deployed resources.
[0036] In an embodiment, after the creation of the automatically deployed resources is completed, the common service entity 120 sends a resource creation response 104 to the application entity 110. Optionally, the resource creation response 103 includes details of the resource creation.
[0037] FIG. 2 is a flow schematic diagram of an embodiment of a resource placement method executed by the common service entity of the present disclosure.
[0038] In step 201, a request for creating a resource is received, and the request includes placement rules for automatic placement of the target resource. The common service entity can receive the request from the application entity. The placement rules can include one or more rules defined by the application entity for governing or controlling the execution of the automatic placement. The target resource can include resources representing application entities (Aplication Entity, AE), containers, software, etc. in respective devices and sensors.
[0039] In step 202, an autoDeploy resource is created in response to the request. Creating the autoDeploy resource includes storing, in the autoDeploy resource, the placement rule information obtained based on the placement rules included in the request.
[0040] The autoDeploy resource is for automatically placing resources. Automatic placement can include automatically performing operations such as creating, updating, and deleting the attributes of the resources and child resources. The creation of the autoDeploy resource can be performed in the application layer for various application scenarios. In one example, when it is necessary to perform the same placement operation on multiple resources simultaneously, the CSE can create an autoDeploy resource. In an embodiment, the CSE can create an autoDeploy resource according to a creation command received from the AE. The creation command may be input by the user or may be from an entity that requires the corresponding placement operation.
[0041] After creating the autoDeploy resource, the CSE stores the placement rule information in the autoDeploy resource. The placement rule information defines the rules to be followed in the process of automatically placing resources. The placement rule information includes multiple types of information, such as identity information for indicating the target resources to be placed and deployment information for limiting how to automatically place them, but is not limited thereto. In an embodiment, the identity information can include, for example, filtering usage information and / or target resource matching information. The deployment information can include deployment type information, deployment operation information, etc. Furthermore, the deployment information can include attribute placement information, child resource placement information, placement policy information, etc.
[0042] In one embodiment, the CSE extracts the placement information and the placement rules included therein from the received request, and ensures that the placement rule information includes all the extracted placement rules. Alternatively or additionally, the CSE may include some of these placement rules in the placement rule information as needed. Optionally, the CSE may include a modified version of the placement rules in the placement rule information. Optionally, the CSE can also add other placement rules other than those included in the placement rule information to the placement rule information.
[0043] In one embodiment, when creating an auto-deploy resource, the CSE can generate the self-attributes of the auto-deploy resource. The attribute values of the self-attributes are for indicating the characteristics and states of the auto-deploy resource itself. There may be multiple self-attributes of the auto-deploy resource, for example, resource type, resource ID, resource name, resource expiration date, resource creation time, resource last modification time, resource declared object, attributes of the resource declaration, etc. When creating an auto-deploy resource, multiple of these attributes can be selected to set the attribute values. For example, the resource type is set to 100 (indicating that the resource type is the auto-deploy resource type), the resource ID is set to 12333, the resource name is set to autodeploy1, the resource expiration date is set to 20181020, the resource creation time is set to 20180705, and the resource last modification time is set to 20180802.
[0044] In one embodiment, the placement rule information can be embodied as an attribute related to the deployment of the auto-deploy resource. Accordingly, when creating an auto-deploy resource, attributes related to the deployment (i.e., auto-placement) of the auto-deploy resource are also generated. There may be multiple attributes related to the deployment (i.e., auto-placement), including but not limited to attributes related to the matching of target resources, attributes related to the placement operation, attributes related to the placement policy, etc.
[0045] In one embodiment, after storing the placement rule information in the automatic deployment resource, the application layer deploys the automatic deployment resource in the service layer by sending the automatic deployment resource to the service layer, and completes the resource placement by using the automatic deployment resource.
[0046] In step 203, based on the placement rule information, identify the target resources to be placed, and perform resource placement on the identified target resources.
[0047] Resource placement can be completed in the service layer. In an embodiment, based on the identity information in the placement rule information, identify the target resources to be placed, and based on the deployment information in the placement rule information, perform the automatic placement. Performing automatic placement on target resources includes, for example, operations such as creating, updating, and deleting the attributes of target resources and child resources. In an embodiment, the target resources can include resources that have been created before creating the automatic deployment resource, or resources that are newly created after creating the automatic deployment resource.
[0048] According to the method of the embodiments of the present disclosure, by creating an automatic deployment resource, resource placement is performed on the target resources, the consumption of bandwidth resources between the application layer and the service layer is reduced, and the consumption of computing resources of the application layer and the service layer is reduced, thereby improving the resource placement efficiency.
[0049] FIG. 3 is a flowchart for identifying a target resource to be deployed according to an embodiment of the present disclosure. In this embodiment, the placement rule information includes identity information indicating the target resource to be deployed. The identity information includes filtering usage information. The filtering usage information indicates whether to identify the target resource using filtering criteria conditions. Exemplarily, the filtering usage information can be stored in the automatically deployed resource as a filtering usage (filterUsage) attribute.
[0050] In step 301, obtain the filtering usage information in the placement rule information.
[0051] In step 302, determine whether the filtering usage information indicates "matching". Exemplarily, the attribute value of the filtering usage attribute may be set as "matching" or "not matching".
[0052] If the determination result indicates "matching", the target resource can be identified according to the filtering criteria conditions. In one example, in step 303, the filtering criteria conditions can be obtained. The filtering criteria conditions may be predefined conditions for selecting the target resource. For example, the filtering criteria conditions can include resources created during / after a certain time, labels of the resources, labels of child resources / parent resources, etc.
[0053] In step 304, identify the target resource to be deployed based on the filtering criteria conditions. By comparing the filtering criteria conditions with the corresponding attributes of the target resource, identify the resources that match the filtering criteria conditions, and the matching resources may be identified as the target resource. If the attribute value of the filtering usage attribute is "not matching", all resources can be determined as the target resource.
[0054] In one embodiment, when the attribute value of the filtering usage attribute is "not matching", other identity information included in the placement rule information, for example, target resource matching information, can be used to identify the target resource. According to these embodiments, the method described in FIG. 3 may include the following steps.
[0055] In step 305, a resource feature indicating the target resource is obtained from the target resource matching information. In one embodiment, the target resource matching information can only indicate the type feature of the target resource. Alternatively, the target resource matching information can also simultaneously indicate one or more features such as the type of the target resource, the label of the target resource, and the creator of the target resource. The application layer can create a data block for the target resource matching information. The data block may be several groups of records arranged in order. The data block can store one or more of the target resource type, the target resource label, and the target resource creator.
[0056] In one embodiment, the target resource matching information may exist in the automatically deployed resource in the form of an attribute of the automatically deployed resource. Attributes related to the target resource identity indicate the characteristics of the target resource to be deployed by including one or more of the target resource type (targetResourceType) attribute, the target resource label (targetResourceLabel) attribute, and the target resource creator (targetResourceCreator) attribute. In one embodiment, the target resource label attribute and the target resource creator attribute may be optional.
[0057] In step 306, the target resource is identified based on the resource characteristics. The resource characteristics can include the target resource type. There may be multiple types of target resources, including but not limited to software type, container type, application entity type, etc. The resource characteristics can further include a target resource label and a target resource creator, etc. The target resource label may be a target resource ID, etc. For example, when the resource characteristic is "the resource type is 'container'", a resource of the container type is identified as the target resource. In another example, when the resource characteristic is "the target resource creator is 'A'", all resources created by 'A' are identified as the target resource.
[0058] According to the embodiments of the present disclosure, it is understood that the placement rule information may simultaneously include both filtering usage information and target resource matching information, or may include only one of the filtering usage information and the target resource matching information. When it is necessary to accurately match the target resource, it may be advantageous to identify the target resource by the filtering usage information because the filtering criteria can more precisely limit more features of the target resource. When it is not necessary to accurately identify the target resource and a high response speed is required, it may be advantageous to quickly identify the target resource by the target resource matching information that defines the key features or type features of the target resource.
[0059] FIG. 4 is a flowchart diagram of automatically placing the identified target resources based on the placement rule information according to an embodiment of the present disclosure. The placement rule information includes deployment information of placement parameters required for automatic placement. The deployment information can include deployment type information and deployment operation information.
[0060] In step 401, obtain the deployment type information and the deployment operation information in the placement rule information. The deployment type information indicates the object type to be deployed in the identified target resource, and the deployment operation information indicates the operation type for the target resource.
[0061] In step 402, based on the deployment type information, determine the type of the object to be deployed for the target resource. In an embodiment, the deployment type information may be embodied as the deployment type (deployType) attribute in the automatic deployment resource. The deployment type attribute is for indicating the type of the object to be deployed. The type of the object includes attributes, child resources, etc. For example, when the attribute value of the deployment type attribute is A, the type of the object to be deployed is an attribute. When the attribute value of the deployment type attribute is B, the type of the object to be deployed is a child resource.
[0062] Based on the deployment operation information, perform the corresponding deployment operation on the object of the determined type, thereby completing the automatic placement of the target resource. In an embodiment, the deployment operation information may be embodied as the deployment operation (deployOperation) attribute in the automatic deployment resource. The deployment operation attribute is for indicating the type of the deployment operation. The types of the deployment operation include creation, update, deletion, etc. The types of the deployment operation can be indicated by different attribute values of the deployment operation attribute. For example, when the attribute value of the deployment operation attribute is C, the type of the placement operation is the creation operation type. When the attribute value of the deployment operation attribute is U, the type of the placement operation is the modification operation type. When the attribute value of the deployment operation attribute is D, the type of the placement operation is the deletion operation type.
[0063] When the deployment type information indicates that the type of the object to be deployed is an attribute, the placement rule information can further include attribute placement information. At this time, in step 403, the attribute placement information regarding the attribute to be deployed is obtained. The application layer can send a request message to the service layer to obtain the attribute placement information. After obtaining the attribute placement information through a query, the service layer returns it to the application layer. The attributes that need to be deployed for the target resource can be of multiple types, such as, for example, access control policy identity (accessControlPolicyIDs) attributes, access address attributes, etc. The attribute placement information can include deployment attribute name information and deployment attribute value information. For example, the deployment attribute name can be the web site address accessible for download, and the deployment attribute value can be the download address of the new patch software.
[0064] In step 404, based on the attribute placement information and the deployment operation information, placement is performed on the corresponding attributes of the target resource.
[0065] In an embodiment, the attribute placement information may be embodied as a deploy attribute name attribute and a deploy attribute value attribute in an automatic deployment resource. The application layer can set the deploy attribute name attribute and the deploy attribute value attribute. The attribute values of the deploy attribute name attribute and the deploy attribute value attribute respectively indicate the deploy attribute name and the deploy attribute value.
[0066] In one example scenario, from the automatically deployed resources, it is obtained that the attribute value of the deployment operation attribute is U (modified), and the attribute value of the deployment type attribute is A (attribute). This indicates that the attributes of the target resource are to be modified. Therefore, the attribute value of the deployment attribute name attribute (for example, the web site address accessible for download) and the attribute value of the deployment attribute value attribute (the download address of the new patch software) can be further obtained from the automatically deployed resources. Thereby, an attribute modification message carrying the attribute values of the deployment attribute name attribute and the deployment attribute value attribute in the automatically deployed resources for modifying the attributes of the target resource can be sent to the target resource. The target resource modifies the attribute value of its own download access web site address attribute to the download address of the new patch software.
[0067] In an embodiment, when the attribute value of the deployment type attribute indicates that the type of the placement operation object is a child resource, the placement rule information may further include child resource placement information.
[0068] In step 405, the child resource placement information regarding the child resources to be deployed of the target resource is obtained. The application layer can send a request message to the service layer to obtain the information of the child resources to be deployed of the target resource, for example, the information of the child resources to be created. The service layer generates the child resource placement information based on the information of the child resources to be deployed by obtaining, through query, the information of the child resources that the target resource needs to create and replying it to the application layer. The information of the child resources to be created of the target resource may be, for example, a list of IDs of the child resources that the target resource needs to add.
[0069] In step 406, based on the child resource placement information and the deployment operation information, the corresponding child resources of the target resource are placed. The child resource placement information can be embodied as the deployResourceIDs attribute in the auto-deploy resource. The application layer can set the deployResourceIDs attribute. In one example, the attribute value of the deployResourceIDs attribute may be for indicating a list of identities (IDs) of child resources to be created / added for the target resource. The child resource placement information includes the attribute value of the deployResourceIDs attribute.
[0070] The automatic deployment resource performs operations such as creation, modification, and deletion on the corresponding child resources of the target resource by obtaining the child resource placement information. For example, the automatic deployment resource determines that it is necessary to perform a creation operation on the corresponding child resources of the target resource based on the attribute values of the deployment operation attribute and the deployment type attribute. Thereby, the automatic deployment resource obtains the attribute value of the deployment resource identity attribute, that is, obtains the ID list of the child resources that need to be added to the target resource. The automatic deployment resource determines the child resources corresponding to the ID list of the child resources, creates or obtains the corresponding child resources, and adds the corresponding child resources under the target resource. In an example scenario, the target resource is the main control platform of a vegetable greenhouse. The automatic deployment resource obtains the ID list of the child resources that need to be added to the main control platform. There is only one child resource ID number in the ID list, and the child resource corresponding to the child resource ID number is an air conditioner control component. Thereby, after the automatic deployment resource creates the air conditioner control component child resource, it can send a notification message to the air conditioner control component and the main control platform. The main control platform and the air conditioner control component perform information interaction, and finally add the air conditioner control component child resource under the main control platform resources.
[0071] In an embodiment, the automatic deployment resource can further control the deployment operation according to a certain placement policy. Thereby, the placement rule information can further include the placement policy information. FIG. 5 is a flowchart diagram for controlling a deployment operation by placement policy information according to an embodiment of the present disclosure.
[0072] In step 501, obtain the placement policy information corresponding to the target resource from the placement rule information. In an embodiment, in the process of creating an automatic deployment resource, in order to obtain the placement policy corresponding to the target resource, the application layer can send a request message to the service layer. The service layer obtains the placement policy corresponding to the target resource through a query and returns it to the application layer. The application layer adds the placement policy information to the placement rule information based on the placement policy corresponding to the target resource. The placement policy information can indicate the determination rule for the effectiveness of the placement. The determination rule for the effectiveness of the placement may be, for example, the determination rule for time effectiveness.
[0073] In an example scenario, the target resource is the main control platform of a vegetable greenhouse. The placement policy of the main control platform can be set to perform the deployment operation between 21:00 and 23:00 at night. Accordingly, the determination rule for the effectiveness of the placement can be set such that the automatic placement between 21:00 and 23:00 every night by the automatic deployment resource is effective.
[0074] In step 502, automatically place the target resource under the control of the placement policy information.
[0075] In an embodiment, the placement policy information may be embodied as an attribute related to the placement policy in the automatic deployment resource, including, for example, the deployment time attribute. The deployment time attribute includes a first time (notDeployBefore) attribute for setting the start time of the deployment (i.e., the deployment operation becomes effective after the set time) and a second time (notDeployAfter) attribute for setting the end time of the deployment (i.e., the deployment operation is effective before the set time). The first time attribute and the second time attribute can indicate the determination rule for the effectiveness of the deployment operation. In an embodiment, the deployment time attribute can include both the first time attribute and the second time attribute, or either one of them.
[0076] Exemplarily, the attribute value of the first hour may be set to 21:00. The attribute value of the second hour may be set to 23:00. Thereby, it can be determined that it can be automatically arranged between 21:00 and 23:00 via the automatic deployment resource, that is, it can be arranged for the main control platform between 21:00 and 23:00.
[0077] In one embodiment, a deployment record attribute is set in the automatic deployment resource to record the related information of the deployed resources of the automatic deployment resource, including the creation history information of the child resources for the target resource or the placement history information for the attributes of the target resource. The deployment record attribute may include a deploy count attribute (deployCount) and a deploy list attribute (deployList). The deploy count attribute is for indicating the count of the resources deployed by the automatic deployment resource. The deploy list attribute is for indicating a list of the resources deployed by the automatic deployment resource and the like.
[0078] FIG. 6 is a block schematic diagram of an embodiment of the resource placement device of the present disclosure. As shown in FIG. 6, the resource placement device 60 includes a receiving module 61, a resource creation module 62, and a resource placement module 63. The receiving module 61 is configured to receive a request for creating a resource. The request includes a placement rule for automatic placement of a target resource. The resource creation module 61 is configured to create an automatic deployment resource in response to the request. The placement rule information included in the automatic deployment resource is obtained based on the placement rule included in the request. The resource placement module 63 is configured to identify the target resource to be placed based on the placement rule information and automatically place the identified target resource. In one embodiment, the resource placement device 60 may be realized as a common service entity.
[0079] In one embodiment, the placement rule information includes resource identification information for identifying target resources to be automatically placed. The resource identification information can include at least one of filtering usage information and resource matching information. The placement rule information can further include deployment information for indicating how to perform the automatic placement. The deployment information can include deployment type information and deployment operation information. Additionally, when the deployment type information indicates that the deployment type is an attribute, the deployment information can further include attribute placement information. The attribute placement information can include an attribute name and an attribute value. When the deployment type information indicates that the deployment type is a child resource, the deployment information can include child resource placement information. The child resource placement information can include a list of child resource identities. Additionally, the deployment information can include deployment policy information. The deployment policy information can include deployment effective time information.
[0080] In an embodiment, the resource placement module 63 can be configured to determine whether to identify the target resources to be placed based on the filtering usage information according to filtering criteria conditions. Alternatively or additionally, the resource placement module 63 can be configured to obtain resource features indicating the target resources from the target resource matching information and identify the target resources based on the resource features.
[0081] In one embodiment, the resource allocation module 63 may be configured to perform the automatic allocation by determining the type of the object to be deployed for the target resource based on the deployment type information and performing a corresponding deployment operation on the object of the determined type based on the deployment operation information. When the deployment type information indicates that the type of the object to be deployed is an attribute, the resource allocation module 63 may be configured to perform allocation for the corresponding attribute of the selected target resource based on the attribute allocation information. When the deployment type information indicates that the type of the object to be deployed is a child resource, the resource allocation module 63 may be configured to perform allocation for the corresponding child resource based on the child resource deployment information.
[0082] In one embodiment, the resource allocation module 63 may be configured to perform the automatic allocation under the control of the allocation policy information. When the allocation policy information includes an effective judgment rule for indicating the period during which the allocation is effective, the resource allocation module 63 is configured to perform the automatic allocation within the period specified by the effective judgment rule.
[0083] In one embodiment, the resource creation module 61 is configured to create the automatic deployment resource in the application layer and deploy it to the service layer. The resource allocation module 63 is configured to perform automatic allocation of the target resource in the service layer.
[0084] FIG. 7 is a block diagram of another embodiment of the resource allocation device 70 of the present disclosure. As shown in FIG. 7, the resource allocation device 70 includes an allocation information establishment module 71 and a transmission module 72. The allocation information establishment module 71 is configured to establish an allocation rule for automatic allocation of target resources. The transmission module 72 is configured to transmit a resource creation request including the allocation rule for creating an automatically deployed resource. In one embodiment, the resource allocation device 70 is realized as an application entity.
[0085] FIG. 8 shows an exemplary scenario to which the embodiments of the present disclosure are applicable. FIG. 8 shows eight resources 81, 82, 83, 84, 85, 86, among which the resource types of resources 81, 83, and 84 are container types, and the resource type of resource 82 is an application entity type. Resources 85 and 86 are both automatically deployed resources created by the application layer, and they are sent to the service layer for deployment.
[0086] In the exemplary scenario, it is assumed that the suspected attacker A uses a crawler to obtain data from the network data of the things. To protect the security of the data, it is necessary to temporarily protect all container resources in the network of the things. As a result, an access control policy for the attacker A (i.e., user A) corresponding to the container resources is created. The content of the access control policy may be to block a resource acquisition request from user A if it is received. The access control policy corresponds to the attribute value of the first access control policy.
[0087] In such a scenario, the following automatic deployment resource 85 can be created. The placement rule information stored in the automatic deployment resource 85 can be made to include only the target resource type attribute, and the value of the target resource type attribute can be set as the container type. At the same time, the attribute value of the deployment operation attribute in the placement rule information stored in the automatic deployment resource 85 can be set as C (i.e., create), and the attribute value of the deployment type attribute can be set as A (i.e., attribute). The attribute placement information in the placement rule information stored in the automatic deployment resource 85 can be made to include the deployment attribute name attribute and the deployment attribute value attribute, and the attribute value of the deployment attribute name attribute can be set as the access control policy attribute, and the attribute value of the deployment attribute value attribute can be set as the first access control policy attribute value.
[0088] In FIG. 8, for comparison purposes, it can be assumed that the automatic deployment resource 86 is created differently. Exemplarily, the placement rule information in the placement rule information stored in the automatic deployment resource 85 may include only the target resource type attribute, and the attribute value of the target resource type attribute indicates that the target resource type is the application entity type. At the same time, the attribute value of the deployment operation attribute in the placement rule information stored in the automatic deployment resource 86 is C, and the attribute value of the deployment type attribute is A. The attribute rule information in the placement rule information stored in the automatic deployment resource 85 may include the deployment attribute name attribute and the deployment attribute value attribute. Also, the attribute value of the deployment attribute name attribute is the access control policy attribute, and the attribute value of the deployment attribute value attribute is the second access control policy attribute value.
[0089] In this way, after the automatic deployment resources 85 and 86 are created and deployed, they can be automatically arranged using them. When performing automatic resource arrangement by the automatic deployment resource 85, since the target resource type attribute in the automatic deployment resource 85 indicates the container type, container resources, that is, resources 81, 83, and 84 can be identified as target resources. Regarding these target resources, based on the deployment operation attribute, deployment type attribute, deployment attribute name attribute, and deployment attribute value attribute in the automatic deployment resource 85, an access control policy attribute is created under each target resource, and the attribute value of the access control policy attribute is set as the first access control policy attribute value. Alternatively, when the access control policy attribute already exists for the target resource, the deployment operation can also be completed by adding the first access control policy attribute value to the access control policy identities (accessControlPolicyIDs) of resources 81, 83, and 84.
[0090] In the scenario of this example, since the automatic deployment resource can quickly complete the setting of the access control policy for the container resource, effective and timely protection against attackers is possible.
[0091] When performing resource arrangement by the automatic deployment resource 86, it is understood that a second access control policy can be added to the access control policy of the entity resource 82 based on the arrangement rule information in the automatic deployment resource 86.
[0092] FIG. 9 shows another exemplary scene to which the embodiments of the present disclosure are applicable. FIG. 9 shows four resources 91, 92, 93, 94, among which the resource types of resources 91 and 92 are also software types, resource 93 is an automatic deployment resource, and the resource type of resource 94 is also a software type, but the creation of resource 94 is later than the creation of resource 93. Each software-type resource is also set with a download access website address attribute. The attribute value of the download access website address attribute is a website address, and the resource downloads a program from the website address.
[0093] In the scene shown in FIG. 9, assume that a software virus has exploded, so it is necessary to perform a unified patch upgrade on the software. Therefore, the automatic deployment resource 93 can be created as follows. In the matching information of the target resource in the deployment rule information stored in the automatic deployment resource 93, only include the target resource type attribute, and the attribute value identity deployment attribute name of the target resource type attribute can be set as the software type. At the same time, the attribute value of the deployment operation attribute in the deployment rule information stored in the automatic deployment resource 93 can be set to U (i.e., update), and the attribute value of the deployment type attribute can be set to A (i.e., attribute). The attribute deployment information in the deployment rule information stored in the automatic deployment resource 93 includes a deployment attribute name attribute and a deployment attribute value attribute, and the attribute value identity deployment attribute name of the deployment attribute name attribute can be set as the download access website address, and the attribute value of the deployment attribute value attribute can be set as the download address of the new patch software.
[0094] Thus, when automatically deploying resources using the automatic deployment resource 93, the resources 91 and 92 are identified as target resources based on the deployment rule information of the automatic deployment resource 93, and the attribute values of the download access website address attributes of the resources 91 and 92 can be updated to the download addresses of the new patch software respectively. In this way, the resources 91 and 92 can download and upgrade patches based on the download addresses of the new patch software.
[0095] In an embodiment, in response to the creation of a resource, the automatic deployment can also be performed by the automatic deployment resource 93. In the scenario shown in FIG. 8, after the resources 91 and 92 are automatically deployed by the automatic deployment resource 93, a new resource 94 is created, and the resource type of the resource 94 is of software type. At this time, after the resource 94 is executed, the automatic deployment resource 93 can be used again to automatically deploy the resource 94. As described above, through the automatic deployment, the download access website address attribute of the resource 94 is updated to the download address of the new patch software. Thereby, the resource 94 can download and upgrade patches according to the download address of the new patch software.
[0096] In the scenario of this example, each software resource can quickly download new patches by the automatic deployment resource 93, which facilitates the upgrade of the patches and can improve the response speed to viruses.
[0097] FIG. 10 shows an exemplary scenario to which the embodiments of the present disclosure are applicable. FIG. 10 shows 6 one resource 1 01 , 102, 103 、1 05, 106, 107, among which the resource 1 01 has a resource type of application entity type, and the resource 1 02 , the resource 103 The resource type is also a container type. The resource 10 7 is an automatic deployment resource.
[0098] In this exemplary scenario, assume that it is necessary to create a child resource for a container type resource. Therefore, the application layer can send a container message to the service layer to obtain the child resource information of the child resources that the container resource needs to create. The service layer obtains the child resource information through a query and returns it to the application layer. The child resource information can include a list of IDs of the child resources to be created for the target resource.
[0099] In such a scenario, the following automatic deployment resource 1 07 can be created. In the placement rule information stored in the automatic deployment resource 1 07 , include the target resource type attribute, and the attribute value of the target resource type attribute can be set to the container type. At the same time, in the placement rule information stored in the automatic deployment resource 1 07 , the attribute value of the deployment operation attribute in the placement rule information can be set to C (i.e., create), and the attribute value of the deployment type attribute can be set to B (i.e., child resource). In the child resource placement information in the placement rule information stored in the automatic deployment resource 1 07 , include the deployment resource identity attribute, and the attribute value of the deployment resource identity attribute can be set to the list of IDs of the child resources that need to be added.
[0100] In this way, when the automatic deployment resource 1 07 performs automatic placement of resources, resource 1 02 , resource 1 03 can be identified as the target resource according to the target resource type attribute of the automatic deployment resource 1 07 . The automatic deployment resource 1 07Based on the deployment operation attributes, deployment type attributes, and deployment resource identity attributes, Resource 1 02 , Resource 1 03 , under it, according to the ID list of child resources that need to be added, Child Resource 1 05 and Child Resource 1 06 are added respectively. Resource 1 05 and Resource 1 06 may be various types of resources, such as resources of the application entity type.
[0101] According to the embodiments of the present disclosure, by performing automatic placement including automatic deployment of child resources or attributes on target resources by automatic deployment resources, the data interaction between the application layer and the service layer is reduced. This helps to reduce the consumption of bandwidth resources between the application layer and the service layer, save the computing resources of the application layer and the service layer, and improve the resource placement efficiency. In addition, according to the solution of the embodiments of the present disclosure, the establishment of application scenarios or complex placement rules that actually meet the requirements is realized by the application layer, and the service layer only performs simple matching / placement according to the established placement rules, so an optimized architecture design is realized.
[0102] FIG. 11 is a structural schematic diagram of another embodiment of the device of the present disclosure. As shown in FIG. 11, the device may be a computing device for placing resources. The computing device may be, for example, a server of a service provider, a device related to a client (such as a client device), a system-on-chip, and / or any other suitable computing device or computing system.
[0103] The device can include a memory 1101 and a processor 1102. The memory 1101 is for storing executable instructions. The processor 1102 is coupled to the memory 1101. The processor 1102 is arranged to execute the executable instructions to implement the resource allocation method of any of the above embodiments.
[0104] The device can further include a communication interface 1103 for exchanging information with other devices. At the same time, the device can further include a bus 1104. The processor 1102, the communication interface 1103 and the memory 1101 can complete communication with each other via the bus 1104.
[0105] The memory 1101 represents the memory / storage device capacity related to one or more computer-readable media. The memory 1101 can include various types of memory means, such as read-only memory (ROM), random access memory (RAM), dynamic RAM (DRAM), dual data rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, polymer memory (e.g., ferroelectric plasma memory, ovonic memory, phase change or ferroelectric memory, silicon-oxygen-nitrogen-oxygen-silicon (SONOS) memory), magnetic cards or optical cards, and other types of media suitable for storing information.
[0106] Processor 1102 may be a central processing unit (CPU). Processor 1102 may also include an application-specific integrated circuit (ASIC) implemented in hardware or other logic devices formed by one or more semiconductors. Such hardware means are not limited by the materials forming them or the processing mechanisms employed therein. For example, processor 1102 may include (one or more) semiconductors and / or transistors (e.g., an electronic integrated circuit (IC)).
[0107] In one embodiment, the present disclosure provides a computer-readable storage medium. Examples of computer-readable storage media can include one or more types of storage media capable of storing electronic data, such as volatile memory or non-volatile memory, removable memory or non-removable memory, erasable memory or non-erasable memory, writable memory or rewritable memory, etc. The computer-readable storage medium stores computer instructions that, when executed by a processor, cause the processor to implement a method of allocating resources in any of the above-described embodiments.
[0108] According to the resource allocation scheme of the embodiments of the present disclosure, by creating auto-deploy resources and performing auto-deploy / allocation on target resources, the requirements for interaction at the interface between the application layer and the service layer are reduced, thereby saving communication resources and processing resources. In addition, since the operation is simple and convenient, the efficiency of allocating target resources can be improved, the operation cost can be reduced, and the user experience can be improved.
[0109] Generally, any function described herein can be implemented by software, firmware, hardware (e.g., fixed logic circuit systems), artificial processing, or a combination of these examples. The terms "module", "function", and "logic" as used herein generally refer to software, firmware, hardware, or a combination thereof. In the case of a software implementation, a module, function, or logic refers to executing program code that specifies tasks when running on a processor (e.g., one or more CPUs) or by a processor. The program code can be stored in one or more computer-readable storage devices. The above-described features of resource automatic allocation are platform-independent, meaning that these technologies can be implemented on various commercial computing platforms with various processors.
[0110] Although the present disclosure has been described in combination with various exemplary embodiments, those skilled in the art can understand that many modifications are possible within the scope of the appended claims. Therefore, the scope of the present disclosure is not intended to be limited to the above description in any way, but should be determined by fully referring to the appended patent claims.
Description of Reference Numerals
[0111] 61 Receiver Module 62 Resource Creation Module 63 Resource Allocation Module 71 Deployment Resource Establishment Module 72 Transmitter Module 81 Container Resource 82 Entity Resource 83 Container Resource 84 Container Resource 85 Automatic Deployment Resource 86 Automatic Deployment Resource 91 Software Resource 92 Software Resource 93 Automatic configuration resource 94 Software resource (new) 101 Entity resource 102 Container resource 103 Container resource 105 Child resource 106 Child resource 107 Automatic deployment resource 1101 Memory 1102 Processor 1103 Communication interface 1104 Bus
Claims
1. Receiving, by a receiving module for requests for creating resources, from an application entity used to set placement rules for automatic placement of target resources, placement rules for automatic placement of target resources, including placement rules for automatic placement of target resources; In response to the request, creating, by a resource creation module, automatic deployment resources, storing, in the created automatic deployment resources, placement rule information obtained based on the placement rules included in the request, the placement rule information defining rules to be followed in the process of automatic placement of the target resources and identity information for indicating the target resources to be placed, and including deployment information for limiting how to perform the automatic placement on the target resources; Identifying, by a resource placement module, target resources to be placed based on the identity information in the placement rule information by using the created automatic deployment resources, and performing resource placement on the target resources identified based on the deployment information in the placement rule information. A method for placing resources, including.
2. The identity information includes filtering usage information; Identifying the target resources to be placed based on the placement rule information includes determining whether to identify the target resources according to filtering criteria based on the filtering usage information. The method according to claim 1.
3. Determining whether to identify the target resources according to filtering criteria based on the filtering usage information includes: When the filtering usage information indicates a match, identifying the target resources according to the filtering criteria; When the filtering usage information indicates no match, determining all resources as target resources or identifying target resources according to target resource matching information included in the placement rule information. The method according to claim 2.
4. The identity information includes target resource matching information, and identifying the target resources to be placed includes: Obtaining target resource features indicating a target resource from the target resource matching information; The method according to claim 1, comprising identifying the target resource based on the target resource features.
5. The target resource features include one or more of a target resource type, a target resource label, and a target resource creator; Identifying the target resource based on the target resource features includes matching the features of selectable resources with the target resource features and determining, as the target resource, a selectable resource whose features match the target resource features. The method according to claim 4.
6. The deployment information includes deployment type information and deployment operation information. Deploying the identified target resource Based on the deployment type information, determining the type of the object to which the target resource is to be deployed; The method according to claim 1, comprising performing a corresponding deployment operation on the object of the determined type based on the deployment operation information.
7. The deployment information further includes attribute configuration information. Automatically deploying to the identified target resource In response to the deployment type information, indicating that the type of the object to be deployed is an attribute, and performing deployment on the corresponding attributes of the target resource based on the attribute configuration information and the deployment operation information. The method according to claim 6.
8. The deployment information further includes child resource configuration information. Automatically deploying to the identified target resource In response to the deployment type information, indicating that the type of the object to be deployed is a child resource, and deploying the corresponding child resources of the target resource based on the child resource configuration information. The method according to claim 6.
9. The deployment information includes deployment policy information. Automatically deploying to the identified target resource includes performing the resource deployment under the control of the deployment policy information. The method according to claim 1.
10. The method according to any one of claims 1 to 9, wherein the target resource is at least one of a resource already created before the creation of the automatic deployment resource and a resource newly created after the creation of the automatic deployment resource.
11. Establishing, by a placement information establishment module, placement rules for automatic placement of a target resource; Sending, by a transmission module, a resource creation request including the placement rules to a resource placement module for creating an automatic deployment resource, and the resource placement module identifying a target resource to be placed based on identity information in the placement rule information by using the created automatic deployment resource, and performing resource placement on the target resource identified based on the deployment information in the placement rule information, wherein the placement rule information is obtained based on the placement rules included in the resource creation request and defines rules to be followed in the process of automatic placement of the identified target resource. The method for placing resources includes the above steps.
12. A receiving module configured to receive, from an application entity used to set placement rules for automatic placement of a target resource, a request for creating a resource including placement rules for automatic placement of the target resource; A resource creation module that creates an automatic deployment resource in response to the request, wherein the created automatic deployment resource stores placement rule information obtained based on the placement rules included in the request, and the placement rule information defines rules to be followed in the process of automatic placement of the target resource and includes identity information for indicating the target resource to be placed and deployment information for limiting how to perform the automatic placement on the target resource. The resource creation module is configured as described above. A resource placement module configured to identify a target resource to be placed based on the identity information in the placement rule information by using the created automatic deployment resource and perform resource placement on the target resource identified based on the deployment information in the placement rule information. The apparatus for placing resources includes the above modules.
13. The identity information includes filtering usage information, and the resource allocation module is configured to determine whether to identify target resources arranged according to filtering reference conditions based on the filtering usage information. The apparatus according to claim 12.
14. The identity information includes target resource matching information, and the resource allocation module is configured to obtain target resource characteristics indicating target resources from the target resource matching information and identify the target resources based on the target resource characteristics. The apparatus according to claim 13.
15. The deployment information includes deployment type information and deployment operation information, and the resource allocation module is configured to determine the type of the object to be deployed for the target resources based on the deployment type information and perform corresponding deployment operations on the objects of the determined type based on the deployment operation information. The apparatus according to any one of claims 12 to 14.
16. The deployment information includes attribute allocation information, and the resource allocation module is configured to indicate that the type of the object to be deployed is an attribute in response to the deployment type information and allocate corresponding attributes of the target resources based on the attribute allocation information and the deployment operation information. The apparatus according to claim 15.
17. The deployment information includes child resource deployment information, and the resource allocation module is configured to indicate that the type of the object to be deployed is a child resource in response to the deployment type information and allocate corresponding child resources of the target resources based on the child resource allocation information and the deployment operation information. The apparatus according to claim 15.
18. The deployment information includes deployment policy information, and the resource allocation module is configured to perform resource allocation under the control of the deployment policy information. The apparatus according to claim 12.
19. An allocation information establishment module configured to establish allocation rules for automatic allocation of target resources; Send a resource creation request including the placement rules to a resource placement module to create an automatic deployment resource, and use the created automatic deployment resource by the resource placement module to identify a target resource to be placed based on the identity information in the placement rule information, perform resource placement on the target resource identified based on the deployment information in the placement rule information, and the placement rule information is obtained based on the placement rules included in the resource creation request and is configured to define the rules to be followed in the process of automatic placement of the identified target resource. A device for placing resources, comprising a transmission module.
20. A computing device for placing resources, comprising a memory for storing executable instructions and a processor for executing the executable instructions to implement the steps of the method according to any one of claims 1 to 11.
21. A computer storage medium for storing computer-readable instructions that, when executed by a processor, cause the processor to implement the steps of the method according to any one of claims 1 to 11.
Citation Information
Patent Citations
Automatic resource subscription method and device
CN105578444A
System, method, and program for resource assignment
JP2007048315A
Placement policy-based allocation of computing resources
JP2017529593A
Cloud application deployment portability
US20150074278A1