Memcached入门

[Memcached系列]专题一:快速入门 1. Memcached简介 Memcached是一个高性能的分布式内存对象缓存系统,用于动态web应用以减轻数据库负载,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个key-value对的hashmap。其进程是用C写的,但是客户端可以用任务语言来编写。 Memcached主要用途就是分布式缓存,示意图(摘自网上),如下,其 阅读详情

一、Memcached 安装

本人使用的是CentOS 7,安装memcached,

1、首先要先安装libevent库

yum install libevent libevent-deve

2、安装memcached

yum install memcached

3、查看memcachend的安装路径

不同的安装方法,memcached的路径不同,所以最好好先which一下

[root@localhost ~]# which memcached
/usr/bin/memcached

4、查看动帮助文件

/usr/bin/memcached -h

  • -d是启动一个守护进程;
  • -m是分配给Memcache使用的内存数量,单位是MB;
  • -u是运行Memcache的用户;
  • -l是监听的服务器IP地址,可以有多个地址;
  • -p是设置Memcache监听的端口,,最好是1024以上的端口;
  • -c是最大运行的并发连接数,默认是1024;
  • -P是设置保存Memcache的pid文件

5、前台运行程序

/usr/bin/memcached -p 11211 -m 64m -vv -u root

不加-u root 参数下会报错

can't run as root without the -u switch

6、作为后台服务程序运行

/usr/bin/memcached -d -m 64M -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid

7、安装Telnet远程登录工具

yum install -y telnet

8、链接memcached

telnet 127.0.0.1 11211

链接成功后会出现以下字样

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

set命令

set 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。

set命令基本语法格式

set key flags exptime bytes [noreply] 
value 

参数说明如下:

  • key:键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

举例:

set name 0 0 3
abc
STORED
输出信息说明:
  • STORED:保存成功后输出。
  • ERROR:在保存失败后输出。

add命令

add 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果 add 的 key 已经存在,则不会更新数据(过期的 key 会更新),之前的值将仍然保持相同,并且您将获得响应 NOT_STORED。

add命令基本语法格式

add key flags exptime bytes [noreply] 
value 

参数与set相同

add name 0 0 3
abc
NOT_STORED 

输出信息说明:

  • STORED:保存成功后输出。
  • NOT_STORED :在保存失败后输出
存储命令描述输出信息说明
set    

set 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果set的key已经存在,该命令可以更新该key所对应的原来的数据也就是实现更新的作用

STORED:保存成功后输出。
ERROR:在保存失败后输出。
add

 add 命令用于将 value(数据值) 存储在指定的 key(键) 中。

如果 add 的 key 已经存在,则不会更新数据(过期的 key 会更新)

之前的值将仍然保持相同

STORED:保存成功后输出。
NOT_STORED :在保持失败后输出。
replace

replace 命令用于替换已存在的 key(键) 的 value(数据值)

。如果 key 不存在,则替换失败

STORED:保存成功后输出。
NOT_STORED:执行替换失败后输出。
append   

append 命令用于向已存在 key(键) 的 value(数据值) 后面追加数据 。

STORED:保存成功后输出。
NOT_STORED:该键在 Memcached 上不存在。
CLIENT_ERROR:执行错误
prependprepend 命令用于向已存在 key(键) 的 value(数据值) 前面追加数据。STORED:保存成功后输出。
NOT_STORED:该键在 Memcached 上不存在。
CLIENT_ERROR:执行错误。
CAS

CAS(Check-And-Set 或 Compare-And-Swap) 命令用于执行一个"检查并设置"的操作

它仅在当前客户端最后一次取值后,该key 对应的值没有被其他客户端修改的情况下,才能够将值写入。

检查是通过cas_token参数进行的, 这个参数是Memcach指定给已经存在的元素的一个唯一的64位值。

STORED:保存成功后输出。
ERROR:保存出错或语法错误。

EXISTS:在最后一次取值后另外一个用户也

在更新该数据。

NOT_FOUND:Memcached 服务上不存在该键值。

Memcached 删除命令

delete命令用于删除已存在的key

delete key [noreply]
参数说明如下:
  • key:键值 key-value 结构中的 key,用于查找缓存值。
  • noreply(可选): 该参数告知服务器不需要返回数据
输出信息说明:
  • DELETED:删除成功。
  • ERROR:语法错误或删除失败。
  • NOT_FOUND:key 不存在。

Memcached 查询命令

get 命令获取存储在 key(键) 中的 value(数据值) ,如果 key 不存在,则返回空。

get key

多个key使用空格隔开

get key1 key2 key3

gets 命令获取带有 CAS 令牌存 的 value(数据值) ,如果 key 不存在,则返回空

gets key

多个key使用空格隔开

gets key1 key2 key3

Memcached 自增或自减操作

Memcached incr 与 decr 命令用于对已存在的 key(键) 的数字值进行自增或自减操作。
incr 与 decr 命令操作的数据必须是十进制的32位无符号整数。

如果 key 不存在返回 NOT_FOUND,如果键的值不为数字,则返回 CLIENT_ERROR,其他错误返回 ERROR。

incr 命令的基本语法格式如下:

incr(或decr) key increment_value
key:键值 key-value 结构中的 key,用于查找缓存值。
increment_value: 增加的数值,默认值为1

命令描述输出信息说明
incr用于对已存在的 key(键) 的数字值进行自增NOT_FOUND:key 不存在。
CLIENT_ERROR:自增值不是对象。
ERROR其他错误,如语法错误等。
decr用于对已存在的 key(键) 的数字值进行自减NOT_FOUND:key 不存在。
CLIENT_ERROR:自减值不是对象。
ERROR其他错误,如语法错误等。

Memcached 统计命令

命令描述基本语法
statsstats 命令用于返回统计信息例如 PID(进程号)、版本号、连接数等stats
stats items用于显示各个 slab 中 item 的数目和存储时长(最后一次访问距离现在的秒数)。stats items

stats slabs

用于显示各个slab的信息,包括chunk的大小、数目、使用情况等。

stats slabs
stats sizes用于显示所有item的大小和个数。
该信息返回两列,第一列是 item 的大小,第二列是 item 的个数。

stats sizes

stats 命令用于返回统计信息例如 PID(进程号)、版本号、连接数等
stats
STAT pid 1662
STAT uptime 5638
STAT time 1520503741
STAT version 1.4.15
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.083247
STAT rusage_system 0.166495
STAT curr_connections 7
STAT total_connections 16
STAT connection_structures 8
STAT reserved_fds 20
STAT cmd_get 7
STAT cmd_set 15
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 5
STAT get_misses 2
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 829
STAT bytes_written 820
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT bytes 294
STAT curr_items 4
STAT total_items 5
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evictions 0
STAT reclaimed 0
END
  • pid: memcache服务器进程ID
  • uptime:服务器已运行秒数
  • time:服务器当前Unix时间戳
  • version:memcache版本
  • pointer_size:操作系统指针大小
  • rusage_user:进程累计用户时间
  • rusage_system:进程累计系统时间
  • curr_connections:当前连接数量
  • total_connections:Memcached运行以来连接总数
  • connection_structures:Memcached分配的连接结构数量
  • cmd_get:get命令请求次数
  • cmd_set:set命令请求次数
  • cmd_flush:flush命令请求次数
  • get_hits:get命令命中次数
  • get_misses:get命令未命中次数
  • delete_misses:delete命令未命中次数
  • delete_hits:delete命令命中次数
  • incr_misses:incr命令未命中次数
  • incr_hits:incr命令命中次数
  • decr_misses:decr命令未命中次数
  • decr_hits:decr命令命中次数
  • cas_misses:cas命令未命中次数
  • cas_hits:cas命令命中次数
  • cas_badval:使用擦拭次数
  • auth_cmds:认证命令处理的次数
  • auth_errors:认证失败数目
  • bytes_read:读取总字节数
  • bytes_written:发送总字节数
  • limit_maxbytes:分配的内存总大小(字节)
  • accepting_conns:服务器是否达到过最大连接(0/1)
  • listen_disabled_num:失效的监听数
  • threads:当前线程数
  • conn_yields:连接操作主动放弃数目
  • bytes:当前存储占用的字节数
  • curr_items:当前存储的数据总数
  • total_items:启动以来存储的数据总数
  • evictions:LRU释放的对象数目
  • reclaimed:已过期的数据条目来存储新数据的数目

stats items 命令用于显示各个 slab 中 item 的数目和存储时长(最后一次访问距离现在的秒数)。

stats items
stats items
STAT items:1:number 4
STAT items:1:age 4180
STAT items:1:evicted 0
STAT items:1:evicted_nonzero 0
STAT items:1:evicted_time 0
STAT items:1:outofmemory 0
STAT items:1:tailrepairs 0
STAT items:1:reclaimed 0
STAT items:1:expired_unfetched 0
STAT items:1:evicted_unfetched 0
END

stats slabs 命令用于显示各个slab的信息,包括chunk的大小、数目、使用情况等。

stats slabs
stats slabs
STAT 1:chunk_size 96
STAT 1:chunks_per_page 10922
STAT 1:total_pages 1
STAT 1:total_chunks 10922
STAT 1:used_chunks 5
STAT 1:free_chunks 10917
STAT 1:free_chunks_end 0
STAT 1:mem_requested 380
STAT 1:get_hits 5
STAT 1:cmd_set 15
STAT 1:delete_hits 0
STAT 1:incr_hits 0
STAT 1:decr_hits 0
STAT 1:cas_hits 0
STAT 1:cas_badval 0
STAT 1:touch_hits 0
STAT active_slabs 1
STAT total_malloced 1048512
END

stats sizes 命令用于显示所有item的大小和个数。

stats sizes
stats sizes
STAT 96 4
END

清除缓存命令

flush_all 命令用于用于清理缓存中的所有 key=>value(键=>值) 对。

该命令提供了一个可选参数 time,用于在制定的时间后执行清理缓存操作。

flush_all [time] [noreply]




Memcached安装配置及使用文档 Memcached安装配置及使用文档,来源于网络,仅供参考 立即下载

相关推荐

Win32逆向必备:X32dbg中窗口句柄查看与消息断点的高级用法

本文深入探讨了X32dbg在Win32逆向工程中的高级应用,重点解析窗口句柄查看与消息断点的实战技巧。通过MFC程序逆向案例,详细介绍了如何利用窗口句柄层次结构、条件断点设置及消息映射表定位等技术,快速捕获关键业务逻辑,提升逆向分析效率。

nginx7reverse的博客 1016

Memcached的安装与基础语法

Memcached的安装与基础语法

qq_51729037的博客 1369

新手DIY无人机,从电机到飞控,这份配件清单和避坑指南请收好

本文为无人机DIY新手提供从电机到飞控的完整配件清单和避坑指南。详细解析电机KV值选择、电调匹配、飞控系统调试等核心问题,帮助初学者避开常见雷区,顺利完成首飞。特别推荐FPV竞速机和航拍机的配件组合方案,并附赠实用调试命令和故障排查表。

weixin_27032989的博客 237

Linux下Memcache的安装和使用

Linux下Memcache的安装和使用服务端的安装客户端的安装测试简单实用 服务端的安装 安装memcached Linux系统安装memcached,首先要先安装libevent库 yum install libevent libevent-deve yum install memcached 2.启动memcached /usr/bin/memcached -p 112...

katherine的博客 612

Kali Linux下John the Ripper实战:从识别yescrypt哈希到破解zip压缩包(保姆级避坑指南)

本文详细介绍了在Kali Linux中使用John the Ripper工具从识别yescrypt哈希到破解zip压缩包的全过程。针对常见的'No password hashes loaded'报错,提供了两种解决方案,并扩展讲解了哈希识别、zip文件破解及性能优化技巧,是安全测试人员的实用指南。

weixin_29323365的博客 236

从零到一:STM32CubeMX虚拟串口开发中的常见陷阱与优化策略

本文深入探讨了STM32CubeMX在USB虚拟串口开发中的常见问题与优化策略,涵盖数据流吞吐量瓶颈、实时性约束等核心挑战。通过实战案例和代码示例,详细解析了波特率同步异常、数据丢失等问题的解决方案,并提供了DMA配置和中断优先级调优的高级技巧,帮助开发者提升STM32虚拟串口的性能和可靠性。

weixin_29164185的博客 370

Memcached

目录 memcached和redis区别 Memcached文档 memcached和redis区别 (转自:https://www.cnblogs.com/middleware/articles/9052394.html仅做个人备份,浏览请看原帖) Redis 和 Memcached 都是基于内存的数据存储系统。Memcached是高性能分布式内存缓存服务,其本质上就是一个内存...

仅做个人笔记 231

自动化测试-自愈技术

随着人工智能的发展,作为一名软件测试工程师,相信大家都会思考如何把这一前沿技术引入到我们的自动化测试当中,想一万遍不如做一遍。,传递当前页面状态,获取之前成功的定位器路径,比较它们,并生成修复的定位器列表。如果修复成功,我们可以使用 Healenium Idea 插件更新我们的自动化测试代码:插件使用修复定位器寻找修复和更新测试代码。的旧定位器去定位按钮的时候,脚本就会报错,提示 “NoSuchElement”的错误异常。现在,我们假设开发人员变更了应用程序的UI界面,改变了这个按钮的id属性,从。

qq_58223744的博客 2660

Memcached开发(二):安装与配置

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。通过在内存中缓存数据和对象,Memcached 可以显著提高网站的响应速度。本文将详细介绍 Memcached 的安装与配置过程,包括在不同操作系统上的安装步骤、配置文件详解,以及一些常见问题的解决方法。

1848

效果炸裂_安装midscene_copw基于midscene操作电脑_基于视觉的软件测试执行_MIDSCENE的安装和使用---AI大模型应用探索0012

摘要:本文介绍了如何通过安装MidSceneJS来增强Copaw的屏幕操作能力。首先需要安装Node.js和npm,并配置淘宝镜像源加速安装。然后全局安装MidScene CLI工具(npm install @midscene/cli -g)。接着配置视觉大模型服务,通过设置环境变量指定模型API密钥、名称、基础URL和家族类型(如qwen3.5-27b),配置文件需存放在C:\Users\Administrator.copaw目录。安装成功后,MidScene已能成功识别并操作屏幕,使用效果良好。文中还提

添柴程序猿的专栏 639

C语言程序设计——单词的统计和替换

【任务描述】 对任意一篇英文文章,统计其中每个单词分别出现了多少次,并可替换指定的单词。⑶ 对单词进行替换时,允许用户选择全部替换或逐个替换。替换完成后,将文章保存到文件。⑴ 英文文章以文件形式输入。⑵ 统计的结果保存到文件。

m0_60738889的博客 810

linux查看memcached安装路径,linux 怎么样 查看memcached是否安装成功

Linux中查看某个软件的安装路径Linux中查看某个软件的安装路径(地址)有时显得非常重要。比如某个文件的快速启动项被删除,或者要建立快速启动项,或者想删除、添加安装文件等等,很多地方都要用到查案文件安装路径的命令。这里介绍Linux查看文件安装路径(地址)命令。一、查看文件安装路径:由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址)。这里以Oracle为例。比如说安装了Or...

weixin_36177719的博客 951

RK3588开发笔记-Buildroot编译host-nodejs报错解决ModuleNotFoundError: No module named ‘_bz2‘

在RK3588的开发过程中,使用Buildroot进行系统的构建和编译是一个常见的选择。然而,在编译host-nodejs的过程中,有时会遇到报错信息提示。这个错误通常是由于Python环境中缺少相应的模块导致的。以下将记录我解决这个问题的过程。。在RK3588的开发过程中,使用Buildroot编译host-nodejs时遇到的错误,通常是由于缺少相应的Python模块导致的。通过配置buildroot pythong bzip2开发库并重新编译,可以解决这个问题。

flypig has a dream! 898

Memcached详解:从入门到进阶

Memcached是一种高性能的分布式内存缓存系统,广泛应用于Web应用加速、数据库查询缓存、会话管理和分布式系统中。它通过将数据存储在内存中,显著提高了数据访问速度,减轻了数据库的负载。本文将从基础概念讲起,逐步深入到安装配置、性能优化、应用场景和高级特性,帮助读者全面掌握Memcached。Memcached作为一种高效的分布式缓存系统,广泛应用于多种场景。通过掌握其基础操作、性能优化和高级特性,开发者可以显著提升应用性能,减轻数据库负载。希望本文能够帮助读者从入门到精通,提升缓存系统的开发和管理能力。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 712

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

memcached入门

1)memchaed入门 http://my249645546.iteye.com/blog/1420061 2)memcached与spring整合 http://blog.sina.com.cn/s/blog_9d0ce63d01012t9g.html memcached之java客户端:spymemcached与spring整合 http://blog.youkuaiyun.com/fh...

流浪的漂泊者 150

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

php memcached 例子,php下Memcached入门实例解析

本文较为详细的讲述了php下Memcached的入门知识与实例。分享给大家供大家参考。具体如下:memcache 在什么情况下被使用,什么情况下不要使用?你在何时应该使用 memcache,又要在何时避免使用它?现在你已经知道了,memcahced 是被设计为减轻数据库教程端压力的,但是你最好能制定一个良好的策略,来想办法让 memcached 来尽可能的缓存那些最影响性能的查询,你可以试着为应用...

weixin_42633137的博客 166

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

memcached入门到理解

这是由 mixi 株式会社 开发部系统运营组的两位工程师所写,日常负责程序的运营。本文将针对最近在Web应用的可扩展性领域的热门话题memcached,说明其内部结构和使用。 文章分为5个章节、案例讲解,推荐大家阅读学习,中文版PDF文档下载地址见最下! 第1章 memcached的基础 1.1 memcached是什么? 1.2 memcached的特征 1.3 安装memcached 1...

johnny_hg的专栏 166

cas 入门之十七:ticket 存储方案-memcached ticket 存储

class="org.jasig.cas.ticket.registry.MemCacheTicketRegistry">

snoopy 1万+

Memcached 入门

简介 官网:http://memcached.org/ Github:https://github.com/memcached/memcached 一款高性能,分布式内存对象缓存系统。 使用目的 缓存数据查询结果,减少数据库访问次数,以提高Web应用的响应速度、提高可扩展性。 特点 互不通信的分布式方式,服务端自身不提供实现,由客户端实现 内置内存存储机制,不支持数据持久、数据...

胡老汉的博客 400

Memcached入门篇——Windows安装及cmd操作(不涉及客户端)

这两天在学习使用Memcached,全程参考菜鸟教程——菜鸟教程,算是很基础的入门篇吧。 首先安装Memcached:分<=1.4.5版本以及>1.4.5版本。 >1.4.5版本: 既然入门,那就用最新的版本(截止至2019年5月8号,最新版本1.4.5)吧。压缩包很小,找个路径解压之后也就两个文件,memcached.exe和pthreadGC2.dll。 1.先把Me...

Canon 1274

一看就会的Memcached入门案例教程

Memcached 是一个高性能、分布式的内存对象缓存系统,用于缓存数据库查询结果、会话数据、图片、视频等内容。通过本案例,您可以学习基本的 Memcached 使用方法,并开始自己的 Memcached 之旅。Memcached 是一个高性能、分布式的内存对象缓存系统,用于缓存数据库查询结果、会话数据、图片、视频等内容。下面是一个 Memcached 入门案例教程,涵盖了基本的概念、安装和使用 Memcached。这将显示 Memcached 的设置信息。这将将数据缓存在 Memcached 中。

qq_40698086的博客 1142
上一篇: 基于VMware+CentOS+Xshell+FileZilla远程教程
下一篇: 使用python操作memcached
张煊信
博客等级 码龄12年 16粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值