Service modeling and virtualization
First Claim
1. A method for generating a virtualized version of a particular software service implemented in a computing system, the method comprising:
- deploying a virtual service within a software container hosted by a particular computing system, wherein the virtual service is designated to use a service model corresponding to the particular software service;
intercepting a request, from a requesting software component, directed to the particular software service, the request comprising a command;
re-routing the request to the virtual service, wherein the service model is generated from transaction data describing a plurality of previously observed transactions involving the particular software service, each of the previously observed transactions comprises a respective observed request of the particular software service and a respective observed response of the particular software service to the observed request;
generating a response by the virtual service, using a processor device of the particular computing system, to the received request based on the service model, wherein attribute values of the request are different from attribute values of the plurality of previously observed transactions and values in the response are generated based on the attributes of the request and a pattern in the service model based on the plurality of previously observed transactions; and
sending the response from the virtual service to the requesting software component, wherein the response is sent to appear to originate from the particular software service.
2 Assignments
0 Petitions
Accused Products
Abstract
The systems and methods described herein can be used to provide virtual service environments. In one embodiment, a virtual service model is generated by detecting one or more transactions, each of which includes a request sent from a requester to a software service and a response sent from the software service to the requester; storing information describing the detected transactions in a virtual service model, where the information describing each transaction includes information identifying a command included in the request and information identifying a response attribute included in the response; and generating information describing an unknown transaction, where the information describing the unknown transaction includes information identifying a first command and information identifying a first response attribute. The first command and the first response attribute are copies of a corresponding command and a corresponding response attribute associated with a corresponding one of the detected transactions.
-
Citations
24 Claims
-
1. A method for generating a virtualized version of a particular software service implemented in a computing system, the method comprising:
-
deploying a virtual service within a software container hosted by a particular computing system, wherein the virtual service is designated to use a service model corresponding to the particular software service; intercepting a request, from a requesting software component, directed to the particular software service, the request comprising a command; re-routing the request to the virtual service, wherein the service model is generated from transaction data describing a plurality of previously observed transactions involving the particular software service, each of the previously observed transactions comprises a respective observed request of the particular software service and a respective observed response of the particular software service to the observed request; generating a response by the virtual service, using a processor device of the particular computing system, to the received request based on the service model, wherein attribute values of the request are different from attribute values of the plurality of previously observed transactions and values in the response are generated based on the attributes of the request and a pattern in the service model based on the plurality of previously observed transactions; and sending the response from the virtual service to the requesting software component, wherein the response is sent to appear to originate from the particular software service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory computer readable medium having program instructions stored therein, wherein the program instructions are executable by a computer system to perform operations comprising:
-
intercepting from a requesting software component, a request directed to a particular software service, the request comprising a command; deploying a virtual service within a software container hosted by a particular computing system, wherein the virtual service is designated to use a virtual service model corresponding to the particular software service, wherein the virtual service model models at least a portion of the particular software service, the virtual service model is generated from transaction data describing a plurality of previously observed transactions involving the particular software service, each of the previously observed transactions comprises a respective observed request of the particular software service and a respective observed response of the particular software service to the observed request; generating a response by the virtual service to the received request based on the virtual service model, wherein attribute values of the request are different from attribute values of the plurality of previously observed transactions and values in the response are generated based on the attributes of the request and a pattern in the virtual service model based on the plurality of previously observed transactions; and sending the response from the virtual service to the requesting software component, wherein the response is sent to appear to originate from the particular software service.
-
-
22. A system comprising:
-
a processor device; a memory element; a virtual service model stored in the memory element, wherein the virtual served model comprises; a model of responses of a particular software service to received requests of the particular software service based on a plurality of previously observed transactions involving the particular software service, wherein each of the previously observed transactions comprises a respective request and a respective response, and the model identifies a pattern in the plurality of previously observed transactions; and a virtual service engine to deploy a request processing module in a particular software container to implement a virtual service, wherein the request processing module is configured to; intercept a request, from a requesting software component, intended for the particular software service; generate a modeled response by the virtual service to the received request based on the virtual service model, wherein attribute values of the request are different from attribute values of the plurality of previously observed transactions and values in the response are generated based on the attributes of the request and the pattern in the plurality of previously observed transactions; and return, to the requesting software component, from the virtual service, the modeled response in lieu of a response to the request by the particular software service. - View Dependent Claims (23, 24)
-
Specification