霞浦建站公司,seo学校,app排行榜,双轨网站开发开源、高性能、高并发的分布式内存缓存系统。
作用 缓存关系型数据库的结果#xff0c;减少数据库自身访问的次数。
常见内存缓存服务软件对比
memcache 纯内存
redis、memcachedb 可持久化存储#xff0c;同时会使用磁盘存 … 开源、高性能、高并发的分布式内存缓存系统。
作用 缓存关系型数据库的结果减少数据库自身访问的次数。
常见内存缓存服务软件对比
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命令语法
0quit 退出memcache
1set
set key flags exptime bytes [noreply]
value
flags 可以包括键值对的整型参数客户机使用它存储关于键值对的额外信息
exptime 缓存时间单位是秒0表示永远
bytes 缓存中存储的字节数
noreply 告知服务不需要返回数据
返回结果stored、errorset userId 0 0 5
12345
STORED2add用于添加不存在的键如果存在不改变键值
用法和set相同
3replace替换已经存在的键值如果不存在替换失败
语法和set相同
4append 向后追加用于对已存在的键追加值
语法和set相同
5prepend 向前追加用于已存在的键
6cas (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
7get 用于查看可跟多个键
set userId 0 0 5
STORED
get userId
VALUE userId 0 5
END
8gets 可以得到cas需要的token值
gets userId
VALUE userId 0 5 4
12345
END
9delete key
10incr key 1 key的value值加1
11decr key 1 key的value值减1
12stats 显示当前memcache的统计数据
13flush_all 清空所有键值对