具有本地高速缓存的内存缓存系统的制作方法

文档序号:12142086阅读:来源:国知局

技术特征:

1.一种内存缓存系统的客户端设备,包括:

存储器;

与所述存储器耦合的一个或多个处理器;和

内存缓存逻辑,所述内存缓存逻辑由所述一个或多个处理器操作以:

接收Get(获取)、Set(设置)或Update(更新)与所述内存缓存系统中的键相对应的值的请求,

响应于所述请求的接收,确定所述键是否导致在由所述内存缓存逻辑维护在存储器中的本地高速缓存中的命中,以及

至少部分地基于确定的结果是否指示所述键导致所述本地高速缓存中的命中来服务所述Get(获取)、Set(设置)或Update(更新)请求。

2.根据权利要求1所述的客户端设备,其中,所述内存缓存逻辑用于进一步为所述本地高速缓存在所述存储器内分配或使得被分配存储空间。

3.根据权利要求1所述的客户端设备,其中,对于具有所述键导致命中的Get(获取)请求,服务包括:

访问所述本地高速缓存以取回所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用从所述本地高速缓存取回的所述一个或多个地址来取回所述值和相关联的状态标志;和

至少部分地基于通过所述远程直接存储器访问操作取回的状态标志来确定通过所述远程直接存储器访问操作取回的值是否陈旧。

4.根据权利要求3所述的客户端设备,其中对于具有所述键导致命中的Get(获取)请求,服务还包括:响应于陈旧确定的结果指示所述值不陈旧,返回所取回的值。

5.根据权利要求3所述的客户端设备,其中对于具有所述键导致命中的Get(获取)请求,服务还包括:

响应于陈旧确定的结果指示所述值为陈旧,

将所述Get(获取)请求传输到所述内存缓存系统的服务器以请求所述值;

接收所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的第二一个或多个位置的第二一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用所接收的第二一个或多个地址来取回所述值和相关联的状态标志;

更新所述本地高速缓存以存储针对所述键的第三和第四地址;和

返回接收的值。

6.根据权利要求1所述的客户端设备,其中,对于具有所述键未导致命中的Set(设置)请求,服务包括:

将所述Get(获取)请求传输到所述内存缓存系统的服务器以请求所述值;

接收所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用所接收的一个或多个地址来取回所述值和相关联的状态标志;和

返回接收的值。

7.根据权利要求1所述的客户端设备,其中,对于Set(设置)请求,服务包括:

响应于所述键导致命中,使得产生所述命中的所述本地高速缓存中的高速缓存条目无效;和

将所述Set(设置)请求发送到所述内存缓存系统的服务器。

8.如权利要求3所述的客户端设备,其中,执行远程直接存储器访问包括:首先确定产生所述命中的高速缓存条目尚未到期。

9.一种内存缓存系统的服务器设备,包括:

存储器;

与所述存储器耦合的一个或多个处理器;

网络接口卡,所述网络接口卡被配备来支持远程存储器直接访问;以及

内存缓存逻辑,所述内存缓存逻辑由所述一个或多个处理器操作以:

接收Get(获取)对应于所述内存缓存系统中的键的值的请求,

确定所述键是否导致命中,以及

响应于所述键导致命中,返回所述值和与所述值相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址。

10.根据权利要求9所述的服务器设备,其中,所述内存缓存逻辑进一步:

接收使用第二对应值Update(更新)所述内存缓存系统中的第二键的请求,

确定第二键是否导致命中,以及

响应于所述第二键导致命中,利用陈旧状态更新与产生针对所述第二键的命中的第一条目相关联的第二状态标志,将所述第一条目添加到收集列表,创建针对所述第二键的第二条目,并为所述第二条目指派第二值。

11.根据权利要求9所述设备的服务器,其中,所述内存缓存逻辑进一步周期性地执行维护操作,以恢复被分配给具有有陈旧状态的相关联的状态标志的条目的存储器。

12.根据权利要求9所述设备的服务器,其中,所述内存缓存逻辑进一步将所述存储器的物理地址映射到所述内存缓存系统的地址空间。

13.一种用于存储器高速缓存数据的方法,包括:

由内存缓存系统的客户端设备接收Get(获取)、Set(设置)或Update(更新)与所述内存缓存系统中的键相对应的值的请求;

由所述客户端设备响应于所述接收来确定所述键是否导致在所述客户端设备的存储器中维护的本地高速缓存中的命中,以及

由所述客户端设备至少部分地基于确定的结果是否指示所述键导致所述本地高速缓存中的命中来服务所述Get(获取)、Set(设置)或Update(更新)请求。

14.根据权利要求13所述的方法,其中还包括所述客户端设备为所述本地高速缓存在所述存储器内分配存储空间。

15.根据权利要求13所述的方法,其中对于具有所述键导致命中的Get(获取)请求,服务包括

访问所述本地高速缓存以取回所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用从所述本地高速缓存取回的所述一个或多个地址来取回所述值和相关联的状态标志;和

至少部分地基于通过所述远程直接存储器访问操作取回的状态标志来确定通过所述远程直接存储器访问操作取回的值是否陈旧。

16.根据权利要求15所述的方法,其中对于具有所述键导致命中的Get(获取)请求,服务还包括:响应于陈旧确定的结果指示所述值不陈旧,返回所取回的值。

17.根据权利要求15所述的方法,其中对于具有所述键导致命中的Get(获取)请求,服务还包括:

响应于陈旧确定的结果指示所述值为陈旧,

将所述Get(获取)请求传输到所述内存缓存系统的服务器以请求所述值;

接收所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的第二一个或多个位置的第二一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用所接收的所述第二一个或多个地址来取回所述值和相关联的状态标志;

更新所述本地高速缓存以存储针对所述键的第二或更多个地址;和

返回接收的值。

18.根据权利要求13所述的方法,其中对于具有所述键未导致命中的Set(设置)请求,服务包括:

将所述Get(获取)请求传输到所述内存缓存系统的服务器以请求所述值;

接收所述值和所述值的相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址;

在所述内存缓存系统的服务器上执行远程直接存储器访问操作,以使用所接收的一个或多个地址来取回所述值和相关联的状态标志;和

返回接收的值。

19.根据权利要求13所述的方法,其中对于Set(设置)请求,服务包括:

响应于所述键导致命中,使得产生所述命中的所述本地高速缓存中的高速缓存条目无效;和

将所述Set(设置)请求发送到所述内存缓存系统的服务器。

20.根据权利要求15所述的方法,其中,执行远程直接存储器访问操作包括:首先确定产生所述命中的高速缓存条目尚未到期。

21.一种用于存储器高速缓存数据的方法,包括:

由内存缓存系统的服务器接收Get(获取)对应于键的值的请求,

由所述服务器确定所述键是否导致命中,以及

响应于所述键导致命中,由所述服务器返回所述值和与所述值相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址。

22.根据权利要求21所述的方法,还包括:

由所述服务器接收使用第二对应值Update(更新)所述内存缓存系统中的第二键的请求,

由所述服务器确定所述第二键是否导致命中,以及

响应于所述第二键导致命中,所述服务器利用陈旧状态更新与产生针对所述第二键的命中的第一条目相关联的第二状态标志,将所述第一条目添加到收集列表,创建针对所述第二键的第二条目,并为所述第二条目指派第二值。

23.根据权利要求21所述的方法,还包括:由所述服务器周期性地执行维护操作,以恢复被分配给具有有陈旧状态的相关联的状态标志的条目的存储器。

24.根据权利要求21所述的方法,还包括:由所述服务器将所述服务器的存储器的物理地址映射到所述内存缓存系统的地址空间。

25.包括多个指令的至少一种存储介质,响应于客户端设备对所述指令的执行,使所述客户端设备执行根据权利要求13-18所述的方法中的任何一个。

26.包括多个指令的至少一种存储介质,响应于由服务器设备执行所述指令,使所述服务器设备执行根据权利要求19-24所述的方法中的任何一个。

27.一种内存缓存系统的客户端设备,包括:

用于接收Get(获取)、Set(设置)或Update(更新)与所述内存缓存系统中的键相对应的值的请求的装置;

用于响应于所述接收来确定所述键是否导致在所述客户端设备的存储器中维护的本地高速缓存中的命中的装置;和

用于至少部分地基于确定的结果是否指示所述键导致所述本地高速缓存中的命中来服务所述Get(获取)、Set(设置)或Update(更新)请求的装置。

28.一种内存缓存系统的服务器设备,包括:

用于接收Get(获取)对应于键的值的请求的装置;

用于确定所述键是否导致命中的装置,以及

用于对所述键导致命中进行响应的装置,包括用于返回所述值和与所述值相关联的状态标志所存储的所述内存缓存系统的一个或多个位置的一个或多个地址的装置。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1