PHP - 什么是会话变量的替代品

hap*_*dik 4 php variables session scope global

我在会话中存储了很多变量,这会产生性能问题.所以,我被要求将它存储在其他地方,我可以将它存储在数据库中,但这又会很慢.

是否有更好的存储会话变量的替代方案?全局变量是每个文件/请求.虽然cookie会向用户打开变量,但不会保留服务器端.

提前感谢您的回答!

Amb*_*ber 5

考虑memcached像这样的半持久性数据.存储缓存密钥,$_SESSION然后使用它来获取缓存的数据.

由于将memcached所有内容缓存在内存中(并且严格来说是键值存储),因此它比数据库更快.它对于像会话这样的东西来说有点理想,因为如果你碰巧丢失了缓存的数据,那么就不会丢失任何严重的东西(用户只是意外地被注销).

事实上,PHP Memcache实现提供了一个会话处理程序(参见示例#2),它可以透明地为您处理会话,而无需您真正需要对代码进行任何修改.