General data cache proxy method and system
By designing a general data cache proxy method, analyzing client requests, constructing internal abstract cache requests, and using hash algorithm to select back-end data source entities, the problem of insufficient universality and reliability of the existing cache proxy system is solved, and the more Powerful features and flexibility.
Patent Information
- Application Number
- CN202411133136.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2024-12-13
AI Technical Summary
The existing cache proxy system lacks universality and cannot provide high-level auditing, authentication, comprehensive statistical monitoring and real-time dynamic scaling and failover capabilities of back-end cache, resulting in stability and capability in high concurrency scenarios for large data volume. Operational and maintenance challenges.
Design a general data cache proxy method, by obtaining client request information, analyzing cache access commands, selecting command processors, constructing internal abstract cache requests, collecting buried point information for hot spot analysis, and using hashing algorithm to determine the backend data source Entity, realizes access and failover to the backend cache system, and dynamically scales out.
The scope of cache proxy has been expanded, the reliability of data cache proxy has been improved, and more powerful functions and flexibility have been provided, solving the problem of limitations in the perspective of traditional proxy.
Smart Images

Figure CN119135765A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of cache proxy systems, and in particular to a general data cache proxy method and system. Background Art
[0002] The so-called cache proxy refers to adding a layer of transparent proxy between the user and the data cache system. When the caller accesses the cache system, the request is actually sent to the cache proxy first. After a series of processing by the proxy, the request will be forwarded to the actual cache system behind it.
[0003] Cache proxies generally exist for specific purposes, such as solving problems such as horizontal expansion of cache systems, shielding different cache system implementations under the same protocol, and cache system failover. Currently, cache proxies in the industry are basically implemented to solve low-level, specific problems. Therefore, most of them have the following shortcomings: 1. The protocol is not universal and is only adapted to cache implementations that support a specific protocol; 2. Lack of higher-level auditing and authentication capabilities; 3. Lack of comprehensive statistics and monitoring capabilities; 4. Lack of real-time dynamic scaling and failover capabilities of the back-end cache. The above shortcomings bring stability, maintainability, and availability challenges to the use of cache systems in large data volume and high concurrency scenarios. It often requires spending more resources to start from other aspects and solve some problems through compromise solutions, but it cannot solve the problems fundamentally. Summary of the invention
[0004] In view of this, the present invention proposes a universal data caching proxy method system from a higher-level perspective, aiming to overcome the limitations of the traditional proxy perspective from an overall design perspective and provide a universal and powerful proxy solution, which is specifically implemented by the following technical solutions.
[0005] In a first aspect, the present invention provides a general data caching proxy method, comprising the following steps:
[0006] Obtaining request information sent by the client, and parsing the request information to obtain a cache access command corresponding to the request information;
[0007] Selecting a corresponding command processor for processing according to the cache access command, determining that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information;
[0008] Constructing an internal abstract cache request according to the cache access command content, and collecting cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis;
[0009] Using the data source entity to determine the namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select the corresponding backend data source entity;
[0010] The back-end data source entity uses the internal cache request to access the actual back-end cache system to obtain the return result, and collects the namespace of the request information, initiates the request service, cache access commands and request processing time information according to the return result, and performs request analysis to obtain response information to complete the general data cache agent.
[0011] As a preferred embodiment of the above technical solution, the data source entity is used to determine the namespace routing information of the data source entity through a hash algorithm according to the namespace of the request information to select the corresponding backend data source entity, including:
[0012] S31: monitor whether the namespace configuration and the backend data source access configuration have changed, wherein the namespace configuration includes defining the registered namespace, the set of available namespace client services and the routing relationship from the namespace to the backend cache system, and the backend data source access configuration includes the specific access configuration of each backend data source;
[0013] S32: If the backend data source access configuration has not changed, execute S33; if the backend data source access configuration has changed, execute S34;
[0014] S33: Use the backend cache system instance of the current data source entity as the backend cache system instance of the data source entity to be constructed;
[0015] S34: construct and initialize a backend cache system instance according to the new backend data source access configuration to serve as the backend cache system instance of the data source entity to be constructed.
[0016] As a preferred embodiment of the above technical solution, the data source entity is used to determine the namespace routing information of the data source entity through a hash algorithm according to the namespace of the request information to select the corresponding backend data source entity, and further includes:
[0017] S35: Determine whether the namespace configuration has changed. If so, execute S37; otherwise, execute S36:
[0018] S36: Use the namespace routing information of the current data source entity as the namespace routing information of the data source entity to be constructed, and execute S38;
[0019] S37: construct namespace routing information according to the new namespace configuration and use it as the namespace routing information of the data source entity to be constructed;
[0020] S38: construct a new data source entity according to the backend cache system instance of the data source entity to be constructed and the namespace routing information of the data source entity to be constructed, and replace the data source entity currently in use.
[0021] As a preferred embodiment of the above technical solution, the specific access configuration of each backend data source includes an access URL, a user name, a password and a protocol version.
[0022] As a preferred embodiment of the above technical solution, the namespace is used to abstractly describe the cache resources of the client, and the logical concept boundary of the cache resources is defined through the namespace to decouple the client and the backend cache system.
[0023] As a preferred embodiment of the above technical solution, a universal communication protocol data structure is used to realize the decoupling of the client and the backend cache system, wherein the universal communication protocol is used for the communication between the client and the proxy system.
[0024] As a preferred embodiment of the above technical solution, the general communication protocol data structure is used for at least one of authentication, authorization, access permission, backend cache system failover, dynamic horizontal expansion, cache traffic replication or traffic monitoring of cache requests.
[0025] As a preferred embodiment of the above technical solution, obtaining the request information sent by the client, and parsing the request information to obtain the cache access command corresponding to the request information includes:
[0026] The client constructs request information and serializes the request information;
[0027] Send the serialized request information.
[0028] As a preferred embodiment of the above technical solution, the request information includes a namespace, a request service, a cache access command and cache access command content, and the response information includes a response code, a response message and a response result.
[0029] In a second aspect, the present invention further provides a universal data cache proxy system, comprising:
[0030] A request acquisition unit, used to acquire request information sent by a client, and parse the request information to obtain a cache access command corresponding to the request information;
[0031] An information judgment unit, configured to select a corresponding command processor for processing according to the cache access command, judge that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information;
[0032] A request construction unit, configured to construct an internal abstract cache request according to the cache access command content, and collect cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis;
[0033] An entity selection unit, configured to use a data source entity to determine namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select a corresponding backend data source entity;
[0034] The request analysis unit is used for the back-end data source entity to use the internal cache request to access the actual back-end cache system to obtain the return result, collect the namespace of the request information, initiate the request service, cache access command and request processing time information according to the return result, and perform request analysis to obtain response information to complete the general data cache agent.
[0035] The present invention provides a general data cache proxy method and system, which obtains request information sent by a client, parses the request information to obtain a cache access command corresponding to the request information, selects a corresponding command processor for processing according to the cache access command, determines that the namespace of the request information exists in a registered namespace library, and that the initiation request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information, constructs an internal abstract cache request according to the cache access command content, and collects cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis, uses a data source entity to determine the namespace routing information of the data source entity through a hash algorithm according to the namespace of the request information to select the corresponding backend data source entity, and the backend data source entity uses the internal cache request to access the actual backend cache system to obtain a return result, collects the namespace of the request information, initiates the request service, the cache access command and the request processing time-consuming information according to the return result tracking point, and performs request analysis to obtain response information to complete the general data cache proxy, thereby solving the problem of the limitation of the traditional proxy perspective, expanding the scope of the general data cache proxy, and improving the reliability of the data cache proxy. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0037] Figure 1 A flowchart of the general data caching proxy method provided by the present invention;
[0038] Figure 2 A flow chart of a proxy processing cache request provided by the present invention;
[0039] Figure 3 A dynamic update flow chart of the proxy configuration provided by the present invention;
[0040] Figure 4 A flow chart of updating the routing configuration provided by the present invention;
[0041] Figure 5 This is a structural block diagram of the universal data caching proxy system provided by the present invention. DETAILED DESCRIPTION
[0042] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention, and cannot be understood as limiting the present invention.
[0043] See also Figure 1 The present invention provides a general data cache proxy method, comprising the following steps:
[0044] S21: Obtaining request information sent by the client, and parsing the request information to obtain a cache access command corresponding to the request information;
[0045] S22: selecting a corresponding command processor for processing according to the cache access command, determining that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information;
[0046] S23: constructing an internal abstract cache request according to the cache access command content, and collecting cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis;
[0047] S24: using the data source entity to determine the namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select a corresponding backend data source entity;
[0048] S25: The backend data source entity uses the internal cache request to access the actual backend cache system to obtain the return result, collects the namespace of the request information, initiates the request service, cache access commands and request processing time information according to the return result, and performs request analysis to obtain the response result to complete the general data cache agent.
[0049] In this embodiment, the request information includes a namespace, a service for initiating a request, a cache access command, and a cache access command content, and the response information includes a response code, a response message, and a response result. Obtaining the request information sent by the client, and parsing the request information to obtain the cache access command corresponding to the request information, includes: the client constructs the request information and serializes the request information; and sends the serialized request information. Serialization is the process of converting the state information of an object into a form that can be stored or transmitted. During serialization, the object writes its current state to a temporary or persistent storage area, and the object can be recreated by reading or deserializing the state of the object from the storage area. The namespace is an abstract description of cache resources for the client. The namespace is used to define the boundaries of the logical concept of cache resources, facilitate client access management, decouple the client and the specific cache system, and improve control capabilities, flexibility, and scalability; for the proxy, the namespace will define the client services that are allowed to be accessed, increase authentication and authorization capabilities; define the route to forward requests from the namespace to the specific backend cache system, thereby realizing cache data access capabilities.
[0050] It should be noted that the hash algorithm is a consistent hash algorithm, which is modulo 2^32. The specific steps are as follows: Step 1: The consistent hash algorithm organizes the entire hash value space into a virtual ring in a clockwise direction, called a hash ring; Step 2: Then hash each server using a hash function. Specifically, you can choose the server's IP or host name as a keyword to hash, so as to determine the position of each machine on the hash ring; Step 3: Finally, use the algorithm to locate the data to access the corresponding server: use the same function Hash to calculate the hash value of the data key, and determine the position of this data on the ring. From this position, search along the ring clockwise. The first server encountered is the server it should locate. The consistent hash algorithm only needs to relocate a small part of the data in the ring space for the addition and subtraction of nodes. Only part of the cache will fail, so that all pressure will not be concentrated on the back-end server at the same time. It has good fault tolerance and scalability.
[0051] Specifically, see Figure 2, the proxy cache request processing process is as follows: S1: the client constructs REQ, serializes it and sends the request; S2: parses the request content as REQ; S3: selects the corresponding command processor CH according to the command of REQ; S4: CH receives REQ for further processing; S5: if the namespace of REQ is in the registeredNamespaces of NS, execute step S6, otherwise return an error; S6: if the service of REQ is in the namespaceAccessConfig of NS, execute step S7, otherwise return an error; S7: CH parses the commandDetail content of REQ; S 8: Construct an internal abstract cache request C based on the parsed content; S9: Collect cache request information based on C tracking points to perform hotspot access analysis; S10: Use DSR to execute the actual backend cache to implement access routing; S11: DSR uses REQ's namespace to select a backend DS based on DSR's namespaceRouteInfos through a consistent hash method; S12: DS uses C to access the actual backend cache system and obtain the return result R; S13: Tracking points collect REQ's namespace, service, command, and request processing time information for request analysis; S14: Construct RESP and return it to the caller.
[0052] Among them, in the general protocol data structure, REQ represents request information, namespace represents namespace, service represents initiating request service, command represents cache access command, code represents response code, commandDetail represents cache access command content, that is, binary command details and specific data; RESP represents response information, DSR represents data source entity, registeredNamespaces represents registered namespace library, C represents internal abstract cache request, namespaceAccessConfig represents namespace client service set, namespaceRouteInfos represents namespace routing information, dataSourceInstances represents backend cache system instance, and msg represents response message. The above data structure is mainly used to define a general communication protocol for communication between cache client and cache proxy. The protocol is independent of any specific cache system communication protocol. By defining a cache system-independent communication protocol, the protocol can be autonomous and controllable, and the client and backend cache system can be decoupled. A namespace is an abstract description of cache resources for clients. It defines the logical boundaries of cache resources through namespaces, facilitates client access management, decouples clients from specific cache systems, and improves control, flexibility, and scalability. For proxies, the namespace defines the client services that are allowed to be accessed, increases authentication and authorization capabilities, and defines routes to forward requests from the namespace to the specific backend cache system, thereby achieving cache data access capabilities.
[0053] Among them, in the proxy configuration data structure, NS represents the definition of the registration namespace, the set of client services that can access the namespace, and the routing relationship from the namespace to the backend cache system; DS represents the definition of the specific access configuration of each backend data source, including the access URL, information such as username and password, protocol version, used to establish a communication link with the backend cache system after the proxy system is started, protocol adaptation, and subsequent forwarding of cache requests to the backend cache system; DSR represents the definition of the proxy runtime data source entity, which specifically represents a backend cache system instance when the proxy is running, and all interactions with the cache system must go through the above-defined entity; at the same time, DSR centrally manages all instance routing information and is responsible for cache request routing. The proxy configuration data structure defined above supports hot updates during proxy runtime, realizes dynamic control capabilities, real-time system failover, and real-time backend capacity horizontal expansion.
[0054] It should be understood that by obtaining the request information sent by the client and parsing the request information to obtain the cache access command corresponding to the request information, the corresponding command processor is selected for processing according to the cache access command, it is determined that the namespace of the request information exists in the registered namespace library, and the initiating request service of the request information exists in the namespace client service set, the command processor parses the cache access command content of the request information, constructs an internal abstract cache request according to the cache access command content, and collects cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis, uses the data source entity to determine the namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select the corresponding backend data source entity, and the backend data source entity uses the internal cache request to access the actual backend cache system to obtain the return result, collects the namespace of the request information, initiates the request service, the cache access command and the request processing time-consuming information according to the return result tracking point, and performs request analysis to obtain the response result to complete the general data cache agent, which solves the limitation of the traditional agent perspective, expands the scope of the general data cache agent, and improves the reliability of the data cache agent.
[0055] See also Figure 3 , using the data source entity to determine the namespace routing information of the data source entity through a hash algorithm according to the namespace of the request information to select the corresponding backend data source entity, including:
[0056] S31: monitor whether the namespace configuration and the backend data source access configuration have changed, wherein the namespace configuration includes defining the registered namespace, the set of available namespace client services and the routing relationship from the namespace to the backend cache system, and the backend data source access configuration includes the specific access configuration of each backend data source;
[0057] S32: If the backend data source access configuration has not changed, execute S33; if the backend data source access configuration has changed, execute S34;
[0058] S33: Use the backend cache system instance of the current data source entity as the backend cache system instance of the data source entity to be constructed;
[0059] S34: construct and initialize a backend cache system instance according to the new backend data source access configuration to serve as the backend cache system instance of the data source entity to be constructed;
[0060] S35: Determine whether the namespace configuration has changed. If so, execute S37; otherwise, execute S36:
[0061] S36: Use the namespace routing information of the current data source entity as the namespace routing information of the data source entity to be constructed, and execute S38;
[0062] S37: construct namespace routing information according to the new namespace configuration and use it as the namespace routing information of the data source entity to be constructed;
[0063] S38: construct a new data source entity according to the backend cache system instance of the data source entity to be constructed and the namespace routing information of the data source entity to be constructed, and replace the data source entity currently in use.
[0064] In this embodiment, the specific access configuration of each backend data source includes an access URL, a user name, a password, and a protocol version. The namespace is used to abstractly describe the cache resources of the client. The namespace is used to define the logical concept boundary of the cache resources to decouple the client and the backend cache system. The decoupling of the client and the backend cache system is achieved by using a general communication protocol data structure, wherein the general communication protocol is used for communication between the client and the proxy system. The general communication protocol data structure is used for at least one of authentication, authorization, access permission, backend cache system failover, dynamic horizontal expansion, cache traffic replication, or traffic monitoring of cache requests.
[0065] It should be noted that, see Figure 4 The routing configuration update process is as follows: SS1: monitor NS and DS configuration changes; SS2: Check whether DS has changed. If not, execute step SS3; if changed, execute SS4; SS3: Use the dataSourceInstances of the current DSR as the dataSourceInstances of the DSR to be constructed; SS4: Construct and initialize dataSourceInstances according to the new DS as the dataSourceInstances of the DSR to be constructed; SS5: Check whether NS has changed. If so, execute SS7, otherwise execute SS6; SS6: Use the namespaceRouteInfos of the current DSR as the namespaceRouteInfos of the DSR to be constructed, and execute SS8; SS7: Construct the namespaceRouteInfos structure according to the new NS as the namespaceRouteInfos of the DSR to be constructed; SS8: Construct a new DSR according to dataSourceInstances and namespaceRouteInfos and replace the currently used DSR.
[0066] Among them, NS represents namespace configuration, DS represents backend data source access configuration, DSR represents data source entity, ataSourceInstances represents backend cache system instance, and namespaceRouteInfos represents namespace routing information. Routing configuration uses dynamic configuration update ideas to dynamically update NS and DS content, thereby achieving the purpose of dynamically constructing DSR to achieve failover and horizontal expansion of backend cache.
[0067] See also Figure 5 The present invention also provides a general data cache proxy system, comprising:
[0068] A request acquisition unit, used to acquire request information sent by a client, and parse the request information to obtain a cache access command corresponding to the request information;
[0069] An information judgment unit, configured to select a corresponding command processor for processing according to the cache access command, judge that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information;
[0070] A request construction unit, configured to construct an internal abstract cache request according to the cache access command content, and collect cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis;
[0071] An entity selection unit, configured to use a data source entity to determine namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select a corresponding backend data source entity;
[0072] The request analysis unit is used for the back-end data source entity to use the internal cache request to access the actual back-end cache system to obtain the return result, collect the namespace of the request information, initiate the request service, cache access command and request processing time information according to the return result, and perform request analysis to obtain response information to complete the general data cache agent.
[0073] In all examples shown and described herein, any specific values should be interpreted as merely exemplary and not as limiting, and thus other examples of the exemplary embodiments may have different values.
[0074] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.
[0075] The above-mentioned embodiments only express several implementation methods of the present invention, and the description thereof is relatively specific and detailed, but it cannot be understood as limiting the scope of the present invention. It should be pointed out that for ordinary technicians in this field, several modifications and improvements can be made without departing from the concept of the present invention, which all belong to the protection scope of the present invention.
Claims
1. A general data caching proxy method, characterized in that: The following steps are involved: Obtaining request information sent by the client, and parsing the request information to obtain a cache access command corresponding to the request information; Selecting a corresponding command processor for processing according to the cache access command, determining that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information; Constructing an internal abstract cache request according to the cache access command content, and collecting cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis; Using the data source entity to determine the namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select the corresponding backend data source entity; The back-end data source entity uses the internal cache request to access the actual back-end cache system to obtain the return result, and collects the namespace of the request information, initiates the request service, cache access commands and request processing time information according to the return result, and performs request analysis to obtain response information to complete the general data cache agent.
2. The universal data cache proxy method according to claim 1, characterized in that: Using the data source entity to determine the namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select a corresponding backend data source entity, including: S31: monitor whether the namespace configuration and the backend data source access configuration have changed, wherein the namespace configuration includes defining the registered namespace, the set of available namespace client services and the routing relationship from the namespace to the backend cache system, and the backend data source access configuration includes the specific access configuration of each backend data source; S32: If the backend data source access configuration has not changed, execute S33; if the backend data source access configuration has changed, execute S34; S33: Use the backend cache system instance of the current data source entity as the backend cache system instance of the data source entity to be constructed; S34: construct and initialize a backend cache system instance according to the new backend data source access configuration to serve as the backend cache system instance of the data source entity to be constructed.
3. The universal data cache proxy method according to claim 2, characterized in that: Also includes: S35: Determine whether the namespace configuration has changed. If so, execute S37; otherwise, execute S36: S36: Use the namespace routing information of the current data source entity as the namespace routing information of the data source entity to be constructed, and execute S38; S37: construct namespace routing information according to the new namespace configuration and use it as the namespace routing information of the data source entity to be constructed; S38: construct a new data source entity according to the backend cache system instance of the data source entity to be constructed and the namespace routing information of the data source entity to be constructed, and replace the data source entity currently in use.
4. The universal data cache proxy method according to claim 2, characterized in that: The specific access configuration of each backend data source includes the access URL, user name, password, and protocol version.
5. The universal data cache proxy method according to claim 2, characterized in that: The namespace is used to abstractly describe the cache resources of the client. The namespace is used to define the logical concept boundary of the cache resources to decouple the client and the backend cache system.
6. The universal data cache proxy method according to claim 5, characterized in that: The decoupling of the client and the backend cache system is achieved by using a general communication protocol data structure, wherein the general communication protocol is used for communication between the client and the proxy system.
7. The universal data cache proxy method according to claim 6, characterized in that: The general communication protocol data structure is used for at least one of authentication, authorization, access permission, backend cache system failover, dynamic horizontal expansion, cache traffic replication or traffic monitoring of cache requests.
8. The universal data cache proxy method according to claim 1, characterized in that: Obtaining request information sent by the client, and parsing the request information to obtain a cache access command corresponding to the request information, including: The client constructs request information and serializes the request information; Send the serialized request information.
9. The universal data cache proxy method according to claim 1, characterized in that: The request information includes a namespace, a request service, a cache access command, and cache access command content, and the response information includes a response code, a response message, and a response result.
10. A universal data caching proxy system according to the universal data caching proxy method according to any one of claims 1 to 9, characterized in that: include: A request acquisition unit, used to acquire request information sent by a client, and parse the request information to obtain a cache access command corresponding to the request information; An information judgment unit, configured to select a corresponding command processor for processing according to the cache access command, judge that the namespace of the request information exists in a registered namespace library, and that the initiating request service of the request information exists in a namespace client service set, and the command processor parses the cache access command content of the request information; A request construction unit, configured to construct an internal abstract cache request according to the cache access command content, and collect cache request information according to the internal abstract cache request tracking point to perform hotspot access analysis; An entity selection unit, configured to use a data source entity to determine namespace routing information of the data source entity according to the namespace of the request information through a hash algorithm to select a corresponding backend data source entity; The request analysis unit is used for the back-end data source entity to use the internal cache request to access the actual back-end cache system to obtain the return result, collect the namespace of the request information, initiate the request service, cache access command and request processing time information according to the return result, and perform request analysis to obtain response information to complete the general data cache agent.
