17、SHMemCache:在OpenSHMEM上启用Memcached

SHMemCache:在OpenSHMEM上启用Memcached

1. 引言

SHMemCache是一种在OpenSHMEM上启用Memcached的技术,它通过一系列创新设计,如op项、OpenSHMEM代理、共享内存池、对称环形缓冲区等,提高了Memcached的性能和并发能力。本文将详细介绍SHMemCache的设计、实现和评估。

2. OpenSHMEM代理

2.1 op项

op项代表SHMemCache操作的一个实例,它具有类似内存的通信语义,与现有Memcached的面向连接通信有很大不同。op项由客户端使用一定大小的连续内存空间创建,包含命令类型、服务器名称、键/值长度和值等操作所需的所有信息。通过使用相同的数据结构,服务器、客户端和代理可以在SHMemCache框架中无缝交换和利用op项,避免了传统字符串或二进制消息传递所需的复杂消息拼接或分离。但预定义的op项结构有键/值空间的最大容量限制,对于超大消息,SHMemCache会调度多个op项,并在收到所有成员op项时进行重构。

2.2 服务器/客户端的透明网络

在SHMemCache中,客户端和服务器无需管理网络通信。它们只需将op项放置在与代理共享的相应共享内存段中,接收时从另一个共享内存段获取。代理负责将目标节点的主机名转换为PE ID,通过参考一个将所有参与主机名映射到相应PE ID的映射表来实现,该表由OpenSHMEM例程shmem broadcast()创建。这种透明网络不仅减少了服务器和客户端的工作量,还大大提高了SHMemCache执行的并发能力。

2.3 共享内存池

代理和服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值