博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Memcache知识点梳理
阅读量:6161 次
发布时间:2019-06-21

本文共 760 字,大约阅读时间需要 2 分钟。

http://369369.blog.51cto.com/319630/833234/

 

1、检查客户端的请求数据是否在memcached中,如有,直接把请求数据返回,不再对数据库进行任何操作,路径操作为①②③⑦。

2、如果请求的数据不在memcached中,就去查数据库,把从数据库中获取的数据返回给客户端,同时把数据缓存一份到memcached中(memcached客户端不负责,需要程序明确实现),路径操作为①②④⑤⑦⑥。
3、每次更新数据库的同时更新memcached中的数据,保证一致性。
4、当分配给memcached内存空间用完之后,会使用LRU(Least Recently Used,最近最少使用)策略加上到期失效策略,失效数据首先被替换,然后再替换掉最近未使用的数据。

 

手动清除memcached缓存方法 

telnet localhost 11211

flush_all

php 调用

$memcache_obj = new Memcache;

$memcache_obj->connect('memcache_host', 11211);
$memcache_obj->flush();

 

全热数据?

 其实就是同步更新redis, 异步写数据库 
 全内存,不用文件 
 持久都在数据库 
 这个文件实测还是影响性能的 
 对,全热数据当然内存大。 
 每核32g 4核开3个实例,1个实例跑系统的别的东西
 
比如只维护两张表到内存
测试的时候可以先关闭到缓存,这样改一下数据库数据就是最新的了
 或者通过接口来改数据
而不是直接动数据库
不然你改了数据库,就得重新预热内存数据了 
memcache一旦重启电脑 数据就会清空了

转载于:https://www.cnblogs.com/as3lib/p/5656627.html

你可能感兴趣的文章
Windows 8.1 应用再出发 - 视图状态的更新
查看>>
自己制作交叉编译工具链
查看>>
Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
查看>>
[物理学与PDEs]第3章习题1 只有一个非零分量的磁场
查看>>
onInterceptTouchEvent和onTouchEvent调用时序
查看>>
android防止内存溢出浅析
查看>>
4.3.3版本之引擎bug
查看>>
SQL Server表分区详解
查看>>
STM32启动过程--启动文件--分析
查看>>
垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
查看>>
淘宝的几个架构图
查看>>
linux后台运行程序
查看>>
Python异步IO --- 轻松管理10k+并发连接
查看>>
Oracle中drop user和drop user cascade的区别
查看>>
登记申请汇总
查看>>
Android Jni调用浅述
查看>>
CodeCombat森林关卡Python代码
查看>>
(二)Spring Boot 起步入门(翻译自Spring Boot官方教程文档)1.5.9.RELEASE
查看>>
Shell基础之-正则表达式
查看>>
JavaScript异步之Generator、async、await
查看>>