Memcache简介与运维

        开源、高性能、高并发的分布式内存缓存系统。

作用

        缓存关系型数据库的结果,减少数据库自身访问的次数。

常见内存缓存服务软件对比

memcache                              纯内存

redis、memcachedb               可持久化存储,同时会使用磁盘存

常见工作流程

        数据被缓存在事先分配的memcached管理的内存中,可通过API或命令方式存取内存中缓存的这些数据,每条数据都是以key-value键值对形式存在。浏览器优先访问Memcached缓存,如果没有采取读取数据库。

memcache在企业中的应用场景

1、作为数据库的查询数据缓存;

2、作为集群节点的session会话共享存储,即把客户端用户请求多个前端应用服务器集群产生session会话信息统一存储到一个memcached缓存中。

memcached协议简单,采用基于文本行协议,能通过telnet/nc 等命令直接操作。

支持分布式集群部署

        分布式memcached集群的不同服务之间是互不通信的每个节点都是独立存取数据的,通过对web应用端的程序设计或通过支持hash算法的负载均衡软件,可以让memcached支持海量分布式缓存集群应用。

工作原理

        C/S模式,在服务器端启动memcached服务守护进程,可以指定监听服务器的ip地址,端口号,并发访问连接数及分配的内存等参数来处理客户端的请求。

基本管理

启动:memcached -d -p 11211 -u memcache -m 64 -c 1024 -P /tmp/memcached.pid

相关参数选项介绍
-d 启动一个守护进程
-p 设置memcaced监听的端口号
-u 设置启动memcached进程的用户
-m 分配给memcached使用内存的大小,单位MB
-c 最大允许的并发连接数,默认1024
-l 设置监听的服务器ip,可以理解为绑定的网卡,如果设置127.0.0.1,则只能本机连接,设置本机对外网卡的ip者都能连。
-P 设置保存memcached的pid文件路径。

启动多实例:使用不同的端口号即可。

连接memcached

telnet IP 11211

memcached命令语法

(0)quit 退出memcache
(1)set
set key flags exptime bytes [noreply]
value
flags 可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息
exptime 缓存时间,单位是秒,0表示永远
bytes 缓存中存储的字节数
noreply 告知服务不需要返回数据
返回结果:stored、errorset userId 0 0 5
12345
STORED(2)add(用于添加不存在的键,如果存在,不改变键值)
用法和set相同
(3)replace(替换已经存在的键值,如果不存在,替换失败)
语法和set相同
(4)append  向后追加(用于对已存在的键追加值)
语法和set相同
(5)prepend 向前追加(用于已存在的键)
(6)cas (check and set) 用于执行一个检查并设置的操作,用于已存在键
cas key flags exptime bytes  unique_cas_token【noreply】
valueset c 0 900 9  
memcached
STORED
gets c
VALUE c 0 9 6 //6位token值
memcached
END
cas c 0 900 5 6
abcde
STORED
get c
VALUE c 0 5
abcde
END
(7)get  用于查看,可跟多个键
set userId 0 0 5
STORED
get userId
VALUE userId 0 5
END
(8)gets  可以得到cas需要的token值
gets userId
VALUE userId 0 5 4
12345
END
(9)delete key
(10)incr key 1   key的value值加1
(11)decr key 1   key的value值减1
(12)stats 显示当前memcache的统计数据
(13)flush_all  清空所有键值对

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/343572.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汽配企业MES管理系统的特点与实践

随着汽车工业的飞速发展,汽车零部件制造企业面临着日益复杂的生产环境和多样化的市场需求。为了应对这些挑战,许多汽配企业开始引入MES管理系统解决方案,以提高生产效率、优化资源配置、提升产品质量。本文将重点探讨汽配企业MES管理系统的特…

代码随想录算法训练营第25天 | 216.组合总和III 17.电话号码的字母组合

目录 216.组合总和III 💡解题思路 回溯三部曲 💻实现代码 17.电话号码的字母组合 💡解题思路 # 数字和字母如何映射 # 回溯法来解决n个for循环的问题 💻实现代码 216.组合总和III 题目链接:216.组合总和III …

大数据毕业设计:房屋数据分析可视化系统 预测算法 可视化 商品房数据 Flask框架(源码+讲解视频)✅

毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题&#xff…

如何提高匹配的精确度(多次学习)

我们工业自动化中,视觉软件匹配,都是学习一次,比如找到轮廓,旋转360度,也就是有360个轮廓,然后到图像中去找任意角度的目标。 这样的学习并不能一而概括全。 所以,我借鉴ai的方法,…

VBA_MF系列技术资料1-310

MF系列VBA技术资料 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧,我参考大量的资料,并结合自己的经验总结了这份MF系列VBA技术综合资料,而且开放源码(MF04除外),其中MF01-04属于…

【TypeScript】入门基础知识

目前在做项目的技术栈是 reacttypescript,之前只知道 ts 是 js 的扩展,增加了类型检查,但是没有仔细的学过,纯纯看别人代码上手 anyscript(这很难评...)。趁着最近空闲,就学习一下 ts 的基础知识…

西门子S7-1200直接连接MySQL数据库

最近项目上有个需求,要把采集的数据存储到数据库中,当前西门子有很多方法,必读IDB,还有通过WINCC的脚本,第三方的软件等等,但是随着发展,有些需求希望设备直接到数据库,比如云端的RD…

Linux 【C编程】IO进阶— 阻塞IO、非阻塞IO、 多路复用IO、 异步IO

文章目录 1.阻塞IO与非阻塞IO1.1为什么有阻塞式?1.2非阻塞 2.阻塞式IO的困境3.并发IO的解决方案3.1非阻塞式IO3.2多路复用IO3.2.1什么是多路复用IO?3.2.1多路复用IO select原理3.2.1多路复用IO poll原理 3.3异步IO 1.阻塞IO与非阻塞IO 1.1为什么有阻塞式…

红黑树之概述

红黑树 R-B Tree,全称是 Red-Black Tree,又称为“红黑树”,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。 红黑树的特性 (1)每个节点或者是黑色&…

3D PDF查看器HOOPS Publish助力Smartscape拓展日本AEC市场!

​ 公司:Smartscape Co., Ltd. 行业:建筑、工程和施工(AEC) 软件:适用于AEC行业的3D PDF工具 软件开发工具包:Hoops Publish HOOPS_3D软件开发工具_HOOPS中文网慧都科技是HOOPS全套产品中国地区指定授权经销商,提供3D…

python 爬虫 生成markdown文档

本文介绍的案例为使用python爬取网页内容并生成markdown文档,首先需要确定你所需要爬取的框架结构,根据网页写出对应的爬取代码 1.分析总网页的结构 我选用的是redis.net.com/order/xxx.html (如:Redis Setnx 命令_只有在 key 不存在时设置 key 的值。…

jmeter--3.使用提取器进行接口关联

目录 1. 正则表达式提取器 1.1 提取单个数据 1.2 名词解释 1.3 提取多个数据 2. 边界值提取器 2.2 名词解释 3. JSON提取器 3.1 Json语法 3.2 名词解释 3.3 如果有多组数据,同正则方式引用数据 1. 正则表达式提取器 示例数据:{"access_to…