快速读取数据,减轻磁盘存储(比如Mysql、ES)服务的压力
严格地说,不是跨越,而是跨一个域中的不同主机,现象就是当用户在浏览器中登录某个域中的某个主机后,然后打开这个域中的另外一个(虚拟)主机,能同步登录状态。
a、防止多个客户端对同一接口中同一部分数据的请求出现并发访问Mysql的情况:对某部分数据的第一次请求会从Mysql里读数据然后把数据刷进ES里,其他用户在请求这部分数据就是从ES里读了。
b、缓存的数据是存储在内存中,接口从缓存里请求时速度更快。
c、不同模块的请求差异化:因为网站或者APP中,某些数据是不常变化的比如专题(就使用缓存),某些数据是经常变化甚至实时变化的比如下单的(不使用缓存)
d、前端访问延迟:比如后台修改一个热搜词或者修改广告位的跳转链接,前端必须要等到缓存里对应的Key到期后才能和后台修改保持一致。
和在Linux下是一样的
1、stats :显示服务器信息、统计数据等
2、stats items:显示当前所有item的情况,主要内部的Key的数量
3、stats cachedump item_id num :显示指定item中的前num(0代表全部)个正在生效的Key
1、新增:指令是set
2、查:查询一个Key是用get指令,查询一个slab中的所有生效的Key详见上节
3、改:可用set指令和replace指令
4、删除:用delete指令,删除一个Key和这个Key过期是一样的
5、一个Key失效或者被delete后,使之再次生效:也是用set指令
6、stats reset:清空统计数据,和重启服务是一样的
目前市面上,Redis有RedisDesktopManager远程桌面管理工具,ES有head远程Web管理工具。Memcache并没有类似的桌面管理工具,目前只有3种方式可操作Memcache服务:
就是《5.2、PHP代码中对memcached的基本操作》
部署指导文档https://www.howtoing.com/how-to-setup-phpmemcachedadmin-on-linux/