文章详情页
redis和memcached是不是存储多少空间就占多少内存?
浏览:273日期:2024-07-09 17:00:25
问题描述
这些内存数据库都是把数据放到内存里,作为缓存的话,是不是存储多少内容就占用多少内存呢?
比如我的Linux服务器是2G内存的,那使用他们作为缓存数据库,就不能缓存超过2G的内容呢?
问题解答
回答1:不是存多少占用多少内存。
memcached的缓存机制memcached使用的是 Slab Allocation内存分配机制,可以看下这篇文章Memcached的数据存储方式这种机制有个缺点,将分配的内存分割成特定长度的块(chuck),例如:将70字节的数据存放到88字节的块,就造成了18字节的浪费
内存分配流程

redis 的有需要或后续再补上.
回答2:是的。因为它们是基于内存的数据库。
虽然可以改造成利用磁盘缓存一部分数据,但这样做就失去它自身的意义了。
相关文章:
1. javascript - UglifyJsPlugin打包的时候把css html也压缩了2. javascript - webpack less文件单独打包出错3. PHP5.5.38.0 Apache2.4.23.0服务崩溃 系统日志php_curl.dll模块报4. 怎么php怎么通过数组显示sql查询结果呢,查询结果有多条,如图。我要forsearch里面echo5. java - bin目录有什么特殊含义吗?为什么可执行文件都放在bin目录?6. Python 3.5,斐波数列, a,b = 0,17. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题8. java - 如何求多叉树两个任意节点的最短路径呢?9. python - Push Notification推送服务在手机上测试时候无法收到生产环境的推送10. python - django 项目的 migrations 目录是否应该提交到 git
排行榜

网公网安备