如何使用memcache
如何使用memcache
什么是memcache
memcached是一套用C语言编写的高性能、分布式的内存对象缓存系统,由Brad Fitzpatrick【布拉德·菲茨帕特里克】开发,免费开源,使用BSD license授权发布,首个版本发布于2003年5月。
在计算机中,分布式缓存主要是对单机缓存的一个延伸,当单台缓存服务器无法满足业务的需求时,这时我们就需要部署多台数据服务器用于存取数据库的数据。由于memcached设计使用tcp访问,所以可以部署在多台。
memcached 可以存储小到一个字母,大到一个完整的html页面的数据,但是memcached数据类型比较单一,只支持key-value一种数据类型,同时也不支持数据持久化到硬盘,由于数据存储在RAM(random-access memory)中,所以断电或重启,数据将会丢失,由于数据是非持久化的,所以一旦空间满后,旧数据会被新数据以LRU(Least-Recently-Used)的机制进行覆盖。
为什么要使用memcache
存储数据用数据库就好了,为什么要加个中间层呢,当然是为了提升用户体验了。给三明治中间加块牛排会怎么样,答案是很香,除此之外,它还可以增加系统的吞吐量。试想如果没有内存缓存,每次页面加载都需要一遍又一遍地执行数据库查询和 HTML 渲染。 这些操作大概需要几百毫秒,甚至几秒,这对用户体验来说极不友好。Memcache 查询以毫秒为单位,比数据库查询或复杂的渲染快100倍,这使得应用可以避免较慢的数据库查询、页面呈现或 Web API 调用,请求时间变短了,那么单位时间内处理的请求数也就会变多,吞吐量自然也就上来了,既然有这么多好处,当然要使用了。
memcache如何安装
你可以选择从包安装或者编译源码进行安装,安装方式如下:
1.从包安装
Debian/Ubuntu系统使用下面命令安装:
apt-get install memcached
Redhat/Fedora系统使用下面命令安装:
2.编译源码安装:
#获取最新版本
wget https://memcached.org/latest
#解压缩包
tar -zxf memcached-1.x.x.tar.gz
cd memcached-1.x.x
#配置你要安装的位置
./configure --prefix=/usr/local/memcached
#调试及安装
make && make test && sudo make install


3.安装完成后,你可以检查是否安装成功
#检查是否安装成功
memcached -V
#查看memcached 服务进程
ps -ef|grep memcache

以上是安装过程及安装后的效果。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
2022-02-21 Ant Design Mobile 5.0 来了
2022-02-21 2021年值得推荐的3个React动画库及思考
2022-02-21 15个有用的React动画库,马上让你的项目变得高大上
2022-02-21 ES6rest运算符
2020-02-21 vscode 方法代码块的注释生成方法
2020-02-21 VSCode打开webpack项目,无法对@指向的文件使用“转到定义”,怎么办?
2020-02-21 ES6 @与..