mysql memory存储引擎

memory存储引擎怎么样,好像技术文档较少,有人做过测试吗,性能如何,为什么没有redis和memcache的应用场景多?

阅读 6.7k
1 个回答

memory内存表的读性能很好,可以进行SQL操作。比如你自己设计一套cookie会话认证系统,用户登录后每次请求都要验证用户的cookie,这时你可以把用于验证的数据MD5(密码+全局盐)和用户ID存在memory内存表中,验证时从用户发送过来的cookie中拿出用户ID,放到memory里查询,然后比对MD5(密码+全局盐)。另外,你还可以存储一些其他内容到内存表用户登录记录里,比如设一个token字段,验证码字段,购物车字段,或者一个杂项字段,里面存json_encode或者serialize编码数据。要注意的是,MySQL重启后,memory表的数据会被清空,这个跟Memcached、Redis一样。

用Memcached、Redis也能实现上面的功能,但如果你要开发像Discuz!那样通用的能够运行在大多数虚拟主机上的程序时,几乎就不能采用Memcached、Redis了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题