Session service aspect-oriented cache
- US 10,051,079 B1
- Filed: 11/13/2014
- Issued: 08/14/2018
- Est. Priority Date: 11/13/2014
- Status: Active Grant
First Claim
Patent Images
1. A computer-implemented method for storing session data, comprising:
- storing, by a cache, data for a session established between a session service and a client device, the data comprising a plurality of aspects, an aspect of the plurality of aspects being customized for and retrievable by a backend service of a plurality of backend services of the session service, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services;
receiving, from the backend service of the plurality of backend services, a request to retrieve data from the cache;
determining, based at least in part on the request, both an identity of the backend service of the plurality of backend services and a session identifier associated with the session;
selecting, based at least in part on the session identifier and the identity of the backend service, the aspect of the plurality of aspects of the data corresponding to the backend service; and
providing the selected aspect of the plurality of aspects to the backend service of the plurality of backend services.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for utilizing a session service cache to provide a session to a client device are provided. In the method and apparatus, a cache is populated with a plurality of aspects of data pertaining to a communication session between a session service and the client device. A request to retrieve an aspect of the data is received from a backend service and the backend service is identified based at least in part on the request. The aspect of the plurality of aspects corresponding to the backend service is retrieved and provided to the backend service.
-
Citations
20 Claims
-
1. A computer-implemented method for storing session data, comprising:
- storing, by a cache, data for a session established between a session service and a client device, the data comprising a plurality of aspects, an aspect of the plurality of aspects being customized for and retrievable by a backend service of a plurality of backend services of the session service, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services;
receiving, from the backend service of the plurality of backend services, a request to retrieve data from the cache;
determining, based at least in part on the request, both an identity of the backend service of the plurality of backend services and a session identifier associated with the session;
selecting, based at least in part on the session identifier and the identity of the backend service, the aspect of the plurality of aspects of the data corresponding to the backend service; and
providing the selected aspect of the plurality of aspects to the backend service of the plurality of backend services. - View Dependent Claims (2, 3, 4)
- storing, by a cache, data for a session established between a session service and a client device, the data comprising a plurality of aspects, an aspect of the plurality of aspects being customized for and retrievable by a backend service of a plurality of backend services of the session service, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services;
-
5. A system, comprising at least one computing device having one or more processors operatively coupled to a memory, the processors executing instructions to implement one or more services, wherein the one or more:
- populate a cache with a plurality of aspects of data, an aspect of the data of the plurality of aspects of the data including a data portion;
receive, from a backend service of a plurality of backend services, a request to retrieve the aspect of the data of the plurality of aspects of the data;
retrieve, based at least in part on an identity of the backend service, the aspect of the data of the plurality of aspects of the data, the aspect of the data of the plurality of aspects of the data being customized for and retrievable by the backend service, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services; and
provide the retrieved aspect of the data to the backend service. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
- populate a cache with a plurality of aspects of data, an aspect of the data of the plurality of aspects of the data including a data portion;
-
13. A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of execution by one or more processors of a computer system, cause the computer system to at least:
- cause a plurality of aspects of data to be stored in a cache, an aspect of the data of the plurality of aspects of the data being customized for and retrievable by a backend service of a plurality of backend services, the plurality of aspects of the data being associated with a session between a service and a client device, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services;
receive, from the backend service, a request to retrieve data from the cache, the request being submitted in connection with an identifier of the session;
select the aspect of the of data of the plurality of aspects of the data, the aspect of the data pertaining to the backend service and being selected based at least in part on the identifier of the session and an identity of the backend service, the selected aspect excluding one or more aspects of the data of the plurality of aspects of the data pertaining to one or more backend services different from the backend service; and
provide the aspect of the data of the plurality of aspects of the data to the backend service in response to the request. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
- cause a plurality of aspects of data to be stored in a cache, an aspect of the data of the plurality of aspects of the data being customized for and retrievable by a backend service of a plurality of backend services, the plurality of aspects of the data being associated with a session between a service and a client device, wherein a first aspect of the plurality of aspects provided in response to a request for data by a first backend service of the plurality of backend services is different from a second aspect of the plurality of aspects provided in response to the same request for data by a second backend service of the plurality of backend services;
Specification