Distributed caching system
US-9166862-B1 · Oct 20, 2015 · US
US11533383B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11533383-B2 |
| Application number | US-202016889149-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 1, 2020 |
| Priority date | Oct 13, 2015 |
| Publication date | Dec 20, 2022 |
| Grant date | Dec 20, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The described technology is directed towards locating and using a template for processing data item data from a general form into a client-specific form for returning in response to a client request. A client request includes a data item identifier and client-specific information. The data item's identifier is processed into a data type and/or identifier, e.g., a string. The client-specific information is used to determine a device class, device type and/or client platform software version. The template is found in a hierarchy of templates based upon the client-specific information and the data type or data ID string, e.g., the client-specific information may be used to determine a subset of template folders that is evaluated to find a file with a filename matching the string. The folders may be ordered from most-specific to least-specific, so as to locate the most specific template file that applies.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: a processor; and a memory that stores executable instructions which, when executed by the processor, facilitate performance of operations, the operations comprising: receiving a request for a user interface object, in which the request comprises an identifier of the user interface object and the request is associated with client-specific information; generating response data in response to the request, comprising: obtaining data of the user interface object in a general form, locating a set of templates in a template hierarchy based on the request, building a path order comprising an ordered set of paths to templates of the set of templates from most specific to least specific based on the client-specific information; searching, via the path order, for a most-specific template of the templates that is associated with the identifier; selecting the most-specific template; customizing the data in the general form into customized data in a client-specific form based on the most-specific template; determining a location in a cache based on the identifier of the user interface object; and caching the response data at the location in the cache. 2. The system of claim 1 , wherein the cache is coupled to a front-end data service. 3. The system of claim 2 , wherein the cache a REDIS cache shared among request handling servers of the front-end data service. 4. The system of claim 1 , wherein the obtaining the data of the user interface object in the general form comprises communicating with a back-end data service. 5. The system of claim 1 , wherein the response data is maintained as part of a graph. 6. The system of claim 1 , wherein the client-specific information is first client-specific information, wherein the response data is first response data, wherein the most specific template is a first template, wherein the customized data is first customized data in a first client-specific form, and wherein the operations further comprise generating second response data, comprising selecting a second template based on second client-specific information and customizing the data in the general form into second customized data in a second client-specific form based on the second template. 7. The system of claim 6 , wherein the location in the cache is a first location based on the identifier of the user interface object and the first client specific information, and wherein the operations further comprise determining a second location in the cache based on the identifier of the user interface object and the second client-specific information, and caching the second response data at the second location. 8. The system of claim 7 , wherein the operations further comprise receiving a client request for the user interface object from a client device, the client request providing the identifier of the user interface object and the client request associated with the first client-specific information, obtaining the first response data from the cache location based on the identifier of the user interface object and the first client-specific information, and returning the first response data in response to the client request. 9. The system of claim 1 , wherein the customizing the data in the general form into the customized data in the client-specific form based on the template comprises formatting the customized data based on the template. 10. The system of claim 1 , wherein the customizing the data in the general form into the customized data in the client-specific form based on the template comprises shaping the customized data based on the template. 11. The system of claim 1 , wherein the client-specific information comprises at least one of: client device class data, client device type data, or client device software version data. 12. The system of claim 1 , wherein the request is associated with a token, and wherein the operations further comprise obtaining the client-specific information based upon information in the token. 13. The system of claim 1 , wherein the operations further comprise receiving a client request for the user interface object from a client device, the client request providing the identifier of the user interface object, obtaining the response data based on the identifier of the user interface object, and returning the response data in response to the client request. 14. A method comprising: obtaining, by a system comprising a processor, source data having a graph node identifier, in which the data is in a general form; locating, by the system, a set of templates in a template hierarchy; obtaining, by the system, a path order comprising an ordered set of paths to templates of the set of templates from most-specific to least specific based on client-specific information; searching, by the system, via the path order, for a most-specific template of the templates that is associated with the identifier; selecting, by the system, the most-specific template; processing, by the system, the source data from the general form into client specific response data in a customized form, in which the response data is customized for a client device based on the most-specific template; determining, by the system, a location in a cache based on the graph node identifier and client-specific information; and caching, by the system, the response data at the location in the cache. 15. The method of claim 11 , further comprising receiving, by the system, a client request comprising the graph node identifier, wherein the client request is associated with the client-specific information, determining, by the system, the location in the cache based on the graph node identifier and the client-specific information, obtaining the response data from the location in the cache, and returning, by the system, the response data in response to the client request. 16. The method of claim 11 , further comprising locating, by the system, a template data structure based on type information determined from the graph node identifier and the client-specific information, and wherein processing the source data from the general form into the response data comprises using information in the template data structure to format the source data or shape the source data, or both format the source data and shape the source data, from the general form into the customized form. 17. A non-transitory machine-readable medium having instructions stored thereon that, in response to execution, cause a processor to perform operations comprising: at a front end data service, obtaining graph node data from one or more data sources, the graph node data corresponding to a graph node identified by a graph node identifier; locating a set of templates in a template hierarchy; generating a path order comprising an ordered set of paths to templates of the set of templates from most specific to least specific based on client-specific information; searching via the path order for a most-specific template of the templates that is associated with the identifier; selecting the most-specific template; formatting the graph node data into customized data based on formatting information in the selected most-specific template; determining a location in a front-end data service cache based on the graph node identifier and the device code; and caching the response data at the location in the front-end data service cache. 18. The non-transitory machine-readable medium of claim 17 , wherein the template data structure further comprises shaping information, and wherein t
Drawing of charts or graphs · CPC title
Active monitoring, e.g. heartbeat, ping or trace-route · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
Testing of service level quality, e.g. simulating service usage · CPC title
involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.