Computer data distribution architecture
First Claim
Patent Images
1. A memory-efficient and processor-efficient computer system for reliable implementation of a data cache proxy, the system comprising:
- a plurality of data server computers each being programmed with a data service accessible via an electronic messaging protocol;
a data cache proxy enabled (DCP-enabled) server computer coupled to the one or more data server computers, the DCP-enabled server computer having a plurality of DCP clients, the DCP-enabled server computer caching data from the plurality of data server computers and aggregating subscriptions of the DCP clients to the plurality of data server computers;
the DCP-enabled server computer comprising;
one or more hardware processors;
a cache memory device having at least a portion being a shared memory portion; and
a computer readable data storage device coupled to the one or more hardware processors, the computer readable data storage device having stored thereon software instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations including;
receiving, from a first DCP client of the plurality of DCP clients, a first electronic message requesting object data;
determining whether a shared memory cache stored in the shared memory portion of the cache memory device contains a cached copy of the requested object data;
when the shared memory cache contains a cached copy of the requested object data, transmitting, to the first DCP client, one or more second electronic messages comprising a reference indicating a location where the cached copy is stored in the shared memory portion of the cache memory device in response to the first electronic message, the data received from at least one of the plurality of data server computers and stored in the cache memory device being authoritative due to a data model of the plurality of data server computers;
when the shared memory cache does not contain a cached copy of the requested object data;
selecting one or more data server computers from the plurality of data server computers as one or more appropriate data server computers to provide the requested object data,transmitting one or more third electronic messages to the one or more appropriate data server computers requesting the requested object data,receiving one or more fourth electronic messages from the one or more appropriate data server computers in response to the third electronic messages,filtering the received fourth electronic messages and storing a result of the filtering in the shared memory portion of the cache memory device.
2 Assignments
0 Petitions
Accused Products
Abstract
Described are methods, systems and computer readable media for computer data distribution architecture.
-
Citations
35 Claims
-
1. A memory-efficient and processor-efficient computer system for reliable implementation of a data cache proxy, the system comprising:
-
a plurality of data server computers each being programmed with a data service accessible via an electronic messaging protocol; a data cache proxy enabled (DCP-enabled) server computer coupled to the one or more data server computers, the DCP-enabled server computer having a plurality of DCP clients, the DCP-enabled server computer caching data from the plurality of data server computers and aggregating subscriptions of the DCP clients to the plurality of data server computers; the DCP-enabled server computer comprising; one or more hardware processors; a cache memory device having at least a portion being a shared memory portion; and a computer readable data storage device coupled to the one or more hardware processors, the computer readable data storage device having stored thereon software instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations including; receiving, from a first DCP client of the plurality of DCP clients, a first electronic message requesting object data; determining whether a shared memory cache stored in the shared memory portion of the cache memory device contains a cached copy of the requested object data; when the shared memory cache contains a cached copy of the requested object data, transmitting, to the first DCP client, one or more second electronic messages comprising a reference indicating a location where the cached copy is stored in the shared memory portion of the cache memory device in response to the first electronic message, the data received from at least one of the plurality of data server computers and stored in the cache memory device being authoritative due to a data model of the plurality of data server computers; when the shared memory cache does not contain a cached copy of the requested object data; selecting one or more data server computers from the plurality of data server computers as one or more appropriate data server computers to provide the requested object data, transmitting one or more third electronic messages to the one or more appropriate data server computers requesting the requested object data, receiving one or more fourth electronic messages from the one or more appropriate data server computers in response to the third electronic messages, filtering the received fourth electronic messages and storing a result of the filtering in the shared memory portion of the cache memory device.
-
-
2. A memory-efficient and processor-efficient computer system for reliable implementation of a data cache proxy, the system comprising:
-
a data cache proxy enabled (DCP-enabled) server computer coupled to a plurality of data server computers, the plurality of data server computers each being programmed with a data service accessible via an electronic messaging protocol, the DCP-enabled server computer having a plurality of DCP clients, the DCP-enabled server computer caching data from the plurality of data server computers and aggregating subscriptions of the DCP clients to the plurality of data server computers; the DCP-enabled server computer comprising; one or more hardware processors; a memory device; and a computer readable data storage device coupled to the one or more hardware processors, the computer readable data storage device having stored thereon software instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations including; receiving, from a first DCP client of the plurality of DCP clients, a first electronic message requesting object data; determining whether a cache stored in the memory device contains a cached copy of the requested object data; when the cache contains a cached copy of the requested object data, transmitting, to the first DCP client, one or more second electronic messages comprising a reference indicating a location where the cached copy is stored in the memory device in response to the first electronic message, the data received from at least one of the plurality of data server computers and stored in the memory device being authoritative due to a data model of the plurality of data server computers. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 18)
-
-
14. A system comprising:
-
one or more hardware processors of a data cache proxy enabled (DCP-enabled) server, the DCP-enabled server being coupled to one or a computer readable data storage device coupled to the one or more hardware processors, the computer readable data storage device having stored thereon software instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations including; receiving a first electronic message requesting object data; determining whether a cache of the DCP-enabled server contains a cached copy of the requested object data; when the cache of the DCP-enabled server contains a cached copy of the requested object data, transmitting one or more second electronic messages providing the cached copy of the requested object data from the cache in response to the first electronic message, the data received from at least one of the one or more data servers and stored in the cache being authoritative due to a data model of the one or more data servers. - View Dependent Claims (15, 16, 17, 19, 20, 21, 22)
-
-
23. A method comprising:
-
receiving, at a data cache proxy enabled (DCP-enabled) server, a first electronic message requesting data, the DCP-enabled server caching data; determining that a cache of the DCP-enabled server contains a cached copy of the requested data; after the determining that the cache of the DCP-enabled server contain a cached copy of the requested data, transmitting one or more second electronic messages providing the cached copy of the requested data from the cache in response to the first electronic message, the data stored in the cache being authoritative due to a data model; receiving, at the DCP-enabled server, another electronic message requesting second data; determining that the cache of the DCP-enabled server does not contain after the determining that the cache of the DCP-enabled server does not contain a cached copy of the requested second data, requesting the requested second data. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A nontransitory computer readable medium having stored thereon software instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:
-
receiving, at a data cache proxy enabled (DCP-enabled) server, a first electronic message requesting object data, the DCP-enabled server being coupled to one or more data servers having a data service accessible via an electronic messaging protocol, the DCP-enabled server caching data from the one or more data servers; determining whether a cache of the DCP-enabled server contains a cached copy of the requested object data; when the cache of the DCP-enabled server contains a cached copy of the requested object data, transmitting one or more second electronic messages providing the cached copy of the requested object data from the cache in response to the first electronic message, the data received from at least one of the one or more data servers and stored in the cache being authoritative due to a data model of the one or more data servers; and when the cache of the DCP-enabled server does not contain a cached copy of the requested data, requesting the requested data from a server of the one or more of data servers. - View Dependent Claims (31, 32, 33, 34, 35)
-
Specification