memcache作为一款优秀的进程外缓存,常常被运用于高并发系统架构中。这里主要谈谈怎么通过telnet工具,查看memcache运行状况并对其key进行管理维护。假设memcache安装目录:/usr/local/memcached
1、启动memcache
[root@localhost ~]# /usr/local/memcached/bin/memcached -d -m 512 -u root -l 192.168.119.70 -p 12000 -c 512 -P /usr/local/memcached/memcached.pid
启动参数详解
-d:以守护进程方式启动。如果该参数没有指定,当按ctrl+c命令结束,memcache自动关闭
-m:分配给memcache使用的最大内存数 单位是m,默认是64m
-u: 指定运行memcache的用户
-l: 指定监听的ip地址
-p: 指定监听的tcp端口号,可以通过-u指定udp端口.默认是11211
-c: 最大并发连接数
-P: 报错进程id的文件
memcache 启动之后,我们就可以通过telnet连接memcache,对其进行简单操作管理。
2、telnet连接memcache
- [root@localhost~]#telnet192.168.119.7012000
- Trying192.168.119.70...
- Connectedto192.168.119.70(192.168.119.70).
- Escapecharacteris'^]'.
连接成功之后,即可对memcache进行操作管理了,常用的命令有:
Ⅰ、添加修改
命令格式:<command> <key> <flags> <exptime> <bytes>\r\n<data block>\r\n
<command>:add, set或 replace
<key> :缓存的名字
<flag>:16位无符号整数,和key要存储的数据一起存储,并在程序get缓存时,返回。
<exptime>:过去时间,0 表示永远不过期,如果非零,表示unix时间或距此秒数
<bytes>:存储数据的字节数
\r\n: 表示换行回车
命令结果:
STORED :表示成功
NOT_STORED : 表示失败
a)、添加缓存
如果key已经存在,则会添加失败。
b)、修改缓存
- replaceid104
- 3456
- STORED
key存在时,成功;不存在时,失败。
c)、设置缓存
- setid104
- 2345
- STORED
key不存在时,添加【add】;已存在时,替换【replace】。
Ⅱ、读取
命令格式:get <key>+\r\n
<key>+:表示一个或多个key,多个key时,用空格隔开
a)、读取单个key的缓存
- getid
- VALUEid14
- 1234
- END
b)、读取多个key的缓存
-
getidname
- VALUEid14
- 3456
- VALUEname13
- jim
- END
Ⅲ、删除
命令格式:delete <key> \r\n
<key>:要删除的key
删除id
- deleteid
- DELETED
Ⅳ、清空所有缓存
命令格式:flush_all
- flush_all
- OK
Ⅴ、查看缓存服务器状态
命令:stats
- stats
- STATpid2711//进程id
- STATuptime2453//总的运行时间,单位描述
- STATtime1344856333//当前时间
- STATversion1.4.0//版本
- STATpointer_size32//服务器指针位数,一般32位操作系统是32
- STATrusage_user0.002999//进程的累计用户时间
- STATrusage_system1.277805//进程的累计系统事件
- STATcurr_connections1//当前连接数
- STATtotal_connections11//服务器启动后,总连接数
- STATconnection_structures11//连接结构的数量
- STATcmd_get17//总获取次数
- STATcmd_set1//总写入次数
- STATcmd_flush1//总的的清空次数
- STATget_hits1//总的命中次数
- STATget_misses7//获取没有命中次数
- STATdelete_misses//删除没有命中次数
- STATdelete_hits4//删除命中次数
- STATincr_misses//递增操作没有命中次数
- STATincr_hits//递增操作命中次数
- STATdecr_misses//递减操作没有命中的次数
- STATdecr_hits//递减操作命中的次数
- STATcas_misses//cas设置没有命中次数
- STATcas_hits//cas命中次数
- STATcas_badval//cas操作找到key,但版本过期,没有设置成功
- STATbytes_read455//总共获取数据量
- STATbytes_written1175//总共写入数据量
- STATlimit_maxbytes1048576//最大允许使用内存,单位字节
- STATaccepting_conns1
- STATlisten_disabled_num0
- STATthreads5//当前线程数
- STATconn_yields0
- STATbytes56//已用缓存空间
- STATcurr_items1//当前缓存的keyvalue数
- STATtotal_items7//总共缓存的keyvalue数,包括过期删除的
- STATevictions//通过删除keyvalue,释放内存次数
- END
Ⅵ、打印版本
命令:version
- version
- VERSION1.4.0
Ⅶ、打印内存信息
命令:stats slabs
- statsslabs
- STAT1:chunk_size80
- STAT1:chunks_per_page13107
- STAT1:total_pages1
- STAT1:total_chunks13107
- STAT1:used_chunks1
- STAT1:free_chunks1
- STAT1:free_chunks_end13105
- STAT1:get_hits10
- STAT1:cmd_set10
- STAT1:delete_hits4
- STAT1:incr_hits0
- STAT1:decr_hits0
- STAT1:cas_hits0
- STAT1:cas_badval0
- STATactive_slabs1
- STATtotal_malloced1048560
- END
3、退出telnet
quit
分享到:
相关推荐
除了telnet,还有许多编程语言的客户端库,如PHP的`memcache`和`memcached`扩展,Python的`pylibmc`,Java的`spymemcached`等。这些库提供了更方便的API来操作Memcached,如`set`、`get`、`delete`方法,并支持序列...
1. **命令行测试**:使用telnet命令行工具连接到MemCache服务器,进行简单的键值对操作。 2. **性能监控**:通过MemCache的统计接口,可以获取内存使用情况、命中率等性能指标。 3. **第三方工具**:使用像`mcstat`...
**MEMCACHE_COMPRESSED** 是一个整型常量,用于在使用`Memcache::set()`, `Memcache::add()`和相关方法时开启压缩功能,这有助于在网络传输过程中减小数据包的大小,从而提高数据读写效率,特别适用于处理大量文本或...
### Spring与Memcache集成知识...综上所述,通过Spring集成Memcache不仅可以提升应用程序的性能,还能充分利用Spring框架的强大功能来简化开发和维护过程。同时,选择合适的客户端库也是确保系统稳定性的重要因素之一。
Windows Memcache的安装和.NET使用是许多开发者在构建基于Windows的Web应用程序时需要掌握的技术。本文将深入探讨Windows环境下如何安装Memcache,以及如何使用.NET与Memcache进行交互,同时也会提及相关的动态库。 ...
【Memcache使用详解】 Memcache是一款高性能的分布式内存对象缓存系统,主要用于减轻数据库的负载,通过将数据存储在内存中来快速响应读取请求。本文主要针对Windows环境下的Memcache安装与配置进行详述。 **一、...
**Memcache的使用** 1. **连接与断开**:在编程中,首先要建立与Memcache服务器的连接,设置主机和端口信息。完成操作后,记得正确关闭连接。 2. **存储操作**:通过键值对的方式进行数据存储,包括`set`(设置)、...
4. **连接测试**:通过telnet工具连接到本地Memcache服务,端口号为11211: ```bash telnet 127.0.0.1 11211 ``` 若在安装过程中出现缺少文件的情况,可按照以下步骤操作: - **下载扩展**:下载`memcache.dll`...
学习和使用`Memcache-20151006.doc`和`Memcached 原理和使用详解.pdf`文档,将有助于深入理解Memcache的工作原理和最佳实践。同时,通过`代码.zip`中的示例代码,可以更直观地了解Memcache在实际项目中的应用。
Memcache是一个广泛使用的开源高性能分布式内存对象缓存系统,它能够通过在内存中存储数据来减少对数据库的访问,从而提高Web应用的性能。 描述中的"windows下memcache安装包 附带php扩展包"揭示了这个压缩包不仅...
1. **连接Memcache服务器**:使用`memcache_connect()`或`memcache_pconnect()`函数建立到Memcache服务器的连接,指定服务器地址和端口号。 2. **设置缓存**:使用`memcache_set()`函数可以将数据存储到缓存中,...
Memcache 使用手册 Memcache 是一种高性能的内存键值缓存,它可以为应用程序提供高速的数据访问。Memcache 服务可以通过应用程序的多个实例访问该缓存, Memcache 对于那些不需要数据库的永久性功能和事务功能的...
Memcache是一种高性能的分布式内存对象缓存系统,它能够存储键值对,广泛应用于缓解数据库压力,...熟练掌握这些命令,可以帮助我们在开发和维护过程中更有效地监控和调整memcache缓存系统,提高系统的响应速度和效率。
- 为了确保Memcache服务已正确启动,你可以使用telnet客户端或者一个支持Memcache协议的工具(如PHP的`memcache`扩展或Python的`pylibmc`库)连接到本地的11211端口。如果能成功连接,说明服务工作正常。 5. **...
本篇文章将围绕"Java Memcache使用例子"这一主题,详细介绍如何在Java中使用Memcached。 首先,确保您已经在本地正确安装了Memcached。通常,Memcached可以在Linux、macOS和Windows等操作系统上运行。你可以通过...
在本文中,我们将深入探讨Memcache的核心原理、功能、使用场景以及常见操作。 ### 一、Memcache简介 Memcache最初由Danga Interactive公司开发,现已成为开源项目,被许多大型网站如Facebook、Twitter等采用。它的...
可以使用`Memcache::connect()`或`Memcache::pconnect()`函数,它们的区别在于后者在服务器断开后能重用已存在的连接,节省资源。 ```php $memcache = new Memcache; $conn = $memcache->connect('localhost', ...