hob*_*ave 23
是.
Memcache::set('someKey', array(
'user_id' => 1,
'url' => 'http://',
'name' => 'Dave'
));
Run Code Online (Sandbox Code Playgroud)
有关非常详细的示例,请参阅文档.
memcache中项目的最大存储大小为1,048,576字节(1MB),序列化数组确实需要一些空间.
如果你要将数组结构如下:
array(
[0] => 1,
[1] => 2,
[2] => 3
)
Run Code Online (Sandbox Code Playgroud)
key是自动生成的,value是用户id.
使用此结构编号为1-5000的5000个用户的序列化数组的字符串长度为67792个字符,50000个用户生成777794个字符的数组.
编号100000到150000生成一个838917个字符的序列化字符串.
因此,对于50k用户(如上一个问题所述),您可能会低于1MB的限制.如果您有本地缓存(APC等),请使用它,或者如果由于任何原因不一次需要所有ID,我强烈建议拆分结果或仅使用数据库.
还要考虑一下存储在memcached中的数据结构.如果您只是使用缓存来提供要查找的主键列表,那么您是否需要其他数据?