Distributing relocatable services in middleware for smart items
First Claim
1. A method comprising:
- receiving a request at a service manager from an application located at an application layer for an analysis result associated with an analysis of data generated by one or more sensors and a composite service, the one or more sensors being devices in a device layer;
in response to receiving the request at the service manager, dynamically determining the composite service associated with the analysis of data generated by the one or more sensors, wherein the composite service includes multiple component services and each of the component services is deployable and executable in different service execution environments and the composite service is associated with service metadata including information describing the composite service and an indication of an ordering of execution of the component services to achieve a desired result of processing, and including a first component service and a second component service having an ordering of execution for the analysis of the data based on the service metadata;
determining, by the service manager in an automated manner, the component services, the ordering of the execution of the component services and a deployment plan for the component services;
deploying the first component service to a first service execution environment located at the device layer, the first component service configured to generate a first result;
deploying the second component service to a second service execution environment located at a device handling layer, which is part of a middleware layer in communication with the device layer and an application layer, the second component service configured to generate a second result based on the first result, wherein the deployment of the first component service to the device layer and the second component service to the device handling layer is determined based on the ordering of execution and device metadata, the device metadata including information related to the devices;
invoking the composite service based on an entry point of the composite service, wherein invoking the composite service starts execution of the first component service and the second component service according to the ordering of execution; and
receiving the analysis result and communicating the analysis result to the application, wherein the analysis result is based on the second result generated by the second component service at the middleware layer, the second result being based on the pre-processed first result at the device layer.
2 Assignments
0 Petitions
Accused Products
Abstract
A composite service associated with an analysis of data may be determined, the composite service associated with service metadata and including first and second component services having an ordering of execution for the analysis of the data based on the service metadata. The first component service, configured to generate a first result, may be deployed to a first service execution environment located at a device layer. The second component service, configured to generate a second result based on the first result, may be deployed to a second service execution environment located at a device handling layer. A request for an analysis result associated with the analysis of data may be received. The composite service may be invoked based on an entry point. The analysis result may be received, and may be based on the second result generated by the second component service.
133 Citations
18 Claims
-
1. A method comprising:
-
receiving a request at a service manager from an application located at an application layer for an analysis result associated with an analysis of data generated by one or more sensors and a composite service, the one or more sensors being devices in a device layer; in response to receiving the request at the service manager, dynamically determining the composite service associated with the analysis of data generated by the one or more sensors, wherein the composite service includes multiple component services and each of the component services is deployable and executable in different service execution environments and the composite service is associated with service metadata including information describing the composite service and an indication of an ordering of execution of the component services to achieve a desired result of processing, and including a first component service and a second component service having an ordering of execution for the analysis of the data based on the service metadata; determining, by the service manager in an automated manner, the component services, the ordering of the execution of the component services and a deployment plan for the component services; deploying the first component service to a first service execution environment located at the device layer, the first component service configured to generate a first result; deploying the second component service to a second service execution environment located at a device handling layer, which is part of a middleware layer in communication with the device layer and an application layer, the second component service configured to generate a second result based on the first result, wherein the deployment of the first component service to the device layer and the second component service to the device handling layer is determined based on the ordering of execution and device metadata, the device metadata including information related to the devices; invoking the composite service based on an entry point of the composite service, wherein invoking the composite service starts execution of the first component service and the second component service according to the ordering of execution; and receiving the analysis result and communicating the analysis result to the application, wherein the analysis result is based on the second result generated by the second component service at the middleware layer, the second result being based on the pre-processed first result at the device layer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system including computer-readable instructions recorded on a non-transitory computer readable medium and executable on one or more computing devices, the system comprising:
a middleware layer deployed on at least one of the computing devices, the middleware layer including a request handling layer deployed on the at least one computing device and a device handling layer deployed on the at least one computing device, the middleware layer in communication with an application and a device layer including one or more devices, wherein the request handling layer includes; a service repository that is configured to store at least one composite service, wherein the composite service includes multiple component services and each of the component services is deployable and executable in different service execution environments and the composite service is in association with service metadata including information describing the composite service and an indication of an ordering of execution of the component services to achieve a desired result, the composite service including a first component service and a second component service, the first component service being configured to generate a first result and the second component service being configured to generate a second result based on the first result; a request handler that is configured to receive from the application located at the application layer a request for an analysis result associated with an analysis of data generated by the one or more devices during execution of the composite service and to receive the analysis result, wherein the analysis result is based on the second result generated by the second component service at the middleware layer, the second result being based on the pre-processed first result at the device layer; and a service manager that is configured to; dynamically determine the composite service in response to the request for the analysis result from the application; determine in an automated manner the component services, the ordering of the execution of the component services and a deployment plan for the component services; determine device metadata including information relating to the devices and being associated with each of the devices; initiate deployment of the first component service to a first service execution environment located at the device layer; and initiate deployment of the second component service to a second service execution environment located at the device handling layer based on the service metadata, including the ordering of execution, and the device metadata. - View Dependent Claims (12, 13, 14)
-
15. A service manager including computer-readable instructions recorded on a non-transitory computer readable medium and executable on one or more computing devices, the service manager being deployed on a computing device and configured to:
-
receive a request at the service manager from an application layer for an analysis result associated with an analysis of data generated by one or more sensors and a composite service, the one or more sensors being devices in a device layer; in response to receiving the request at the service manager, dynamically determine the composite service associated with the analysis of data generated by the one or more sensors, wherein the composite service includes multiple component services and each of the component services is deployable and executable in different service execution environments and the composite service is associated with service metadata including information describing the composite service and an indication of an ordering of execution of component services to achieve a desired result of processing, and including a first component service and a second component service having an ordering of execution for the analysis of the data based on the service metadata; determine in an automated manner, the component services, the ordering of execution of the component services and a deployment plan for the component services; initiate deployment of the first component service to a first service execution environment located at the device layer, the first component service configured to generate a first result; initiate deployment of the second component service to a second service execution environment located at a device handling layer, the second component service configured to generate a second result based on the first result, wherein the deployment of the first component service to the device layer and the deployment of the second component service to the device handling layer is determined based on the ordering of execution and device metadata, the device metadata including information relating to the devices; and invoke the composite service based on an entry point of the composite service to obtain the analysis result, wherein invoking the composite service starts execution of the first component service and the second component service according to the ordering of execution and wherein the analysis result is based on the second result generated by the second component service at the middleware layer, the second result being based on the pre-processed first result at the device layer. - View Dependent Claims (16, 17, 18)
-
Specification