①下载memcached软件
②解压 其中有一个memcached.exe文件
③安装memcached –d install [卸载使用 memcached -d uninstall]
④启动 memcached 服务
(1)直接通过界面启动该服务
(2)在控制台下启动 memcached –d start [命令一览表]
⑤查看memcached 服务是否启动成功! 默认端口11211 通过netstat -anb|find 11211命令可以查看
------LINUX
1.编译安装libevent
2.编译安装Memcached
在我写这篇文章的时候,libevent已经有1.4.8稳定版,Memcached Server已经有1.3.0版本。本文就以这两个版本为例,我的gcc是gcc version 3.3.4 (Debian 1:3.3.4-7)。
首先安装libevent
wget http://www.monkey.org/~provos/libevent-1.4.8-stable.tar.gz
tar zxvf libevent-1.4.8-stable.tar.gz
cd libevent-1.4.8-stable
./configure –prefix=/usr 指定安装在/usr下。一开始我没有指定安装目录导致libevent安装在/usr/local/lib,导致Memcached安装后找不到libevent库,即使手工指定路径也不行
make && make install
make clean
然后安装Memcached Server
wget http://www.danga.com/memcached/dist/memcached-1.3.0.tar.gztar zxvf memcached-1.3.0.tar.gz
cd memcached-1.3.0/./configure --with-libevent=/usr 这里需要指定libevent的路径
make && make install
make clean
一眨眼功夫就都编译安装完成了。
测试下Memcached安装成功没:
/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid没错误提示的话,证明安装成功并且启动了Memcached服务了
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
首先用telnet 127.0.0.1 11211这样的命令连接上memcache,然后直接输入stats就可以得到当前memcache的状态
pid | 7862 | memcache服务器进程ID |
uptime | 12617972 | 服务器已运行秒数 |
time | 1320756409 | 服务器当前Unix时间戳 |
version | 1.4.5 | memcache版本 |
pointer_size | 64 | 操作系统指针大小 |
rusage_user | 1.731736 | 进程累计用户时间 |
rusage_system | 251.421778 | 进程累计系统时间 |
curr_connections | 41 | 当前连接数量 |
total_connections | 848 | Memcached运行以来连接总数 |
connection_structures | 46 | Memcached分配的连接结构数量 |
cmd_get | 164377 | get命令请求次数 |
cmd_set | 58617 | set命令请求次数 |
cmd_flush | 0 | flush命令请求次数 |
get_hits | 105598 | get命令命中次数 |
get_misses | 58779 | get命令未命中次数 |
delete_misses | 0 | delete命令未命中次数 |
delete_hits | 0 | delete命令命中次数 |
incr_misses | 0 | incr命令未命中次数 |
incr_hits | 0 | incr命令命中次数 |
decr_misses | 0 | decr命令未命中次数 |
decr_hits | 0 | decr命令命中次数 |
cas_misses | 0 | cas命令未命中次数 |
cas_hits | 0 | cas命令命中次数 |
cas_badval | 0 | 使用擦拭次数 |
auth_cmds | 0 | 认证命令处理的次数 |
auth_errors | 0 | 认证失败数目 |
bytes_read | 262113283 | 读取总字节数 |
bytes_written | 460023263 | 发送总字节数 |
limit_maxbytes | 536870912 | 分配的内存总大小(字节) |
accepting_conns | 1 | 服务器是否达到过最大连接(0/1) |
listen_disabled_num | 0 | 失效的监听数 |
threads | 4 | 当前线程数 |
conn_yields | 0 | 连接操作主动放弃数目 |
bytes | 1941693 | 当前存储占用的字节数 |
curr_items | 476 | 当前存储的数据总数 |
total_items | 58617 | 启动以来存储的数据总数 |
evictions | 0 | LRU释放的对象数目 |
reclaimed | 48830 | 已过期的数据条目来存储新数据的数目 |
服务器SETTINGS信息
maxbytes | 536870912 | 最大字节数限制(0无限制) |
maxconns | 1024 | 允许最大连接数 |
tcpport | 11211 | TCP端口 |
udpport | 11211 | UDP端口 |
inter | NULL | IP地址 |
verbosity | 0 | 日志(0=none,1=som,2=lots) |
oldest | 0 | 最老对象过期时间 |
evictions | on | 是否禁用LRU(on/off) |
domain_socket | NULL | Socket域名 |
umask | 700 | 创建Socket的掩码 |
growth_factor | 1.25 | 增长因子 |
chunk_size | 48 | chunk大小(key+value+flags) |
num_threads | 4 | 线程数(默认4,可通过-t参数设置) |
stat_key_prefix | : | stats分隔符 |
detail_enabled | no | 显示stats细节信息(yes/no) |
reqs_per_event | 20 | 最大IO吞吐量(每event) |
cas_enabled | yes | 是否启用CAS(yes/no,-C禁用) |
tcp_backlog | 1024 | TCP监控日志 |
binding_protocol | auto-negotiate | 绑定协议 |
auth_enabled_sasl | no | 是否启用SASL验证(yes/no) |
item_size_max | 1048576 | 数据最大尺寸 |
stats 显示服务器信息、统计数据等
stats reset 清空统计数据
stats malloc 显示内存分配数据
stats maps 这个不太确定,看源代码是把/proc/self/maps的数据显示出来。这个文件的数据貌似是动态库的映射地址?
stats cachedump slab_id limit_num 显示某个slab中的前limit_num个key列表,显示格式如下 ITEM key_name [ value_length b; expire_time|access_time s] 其中,memcached 1.2.2及以前版本显示的是 访问时间(timestamp) 1.2.4以上版本,包括1.2.4显示 过期时间(timestamp) 如果是永不过期的key,expire_time会显示为服务器启动的时间
stats cachedump 7 2 ITEM copy_test1 [250 b; 1207795754 s] ITEM copy_test [248 b; 1207793649 s]
stats slabs 显示各个slab的信息,包括chunk的大小、数目、使用情况等
stats items 显示各个slab中item的数目和最老item的年龄(最后一次访问距离现在的秒数)
stats detail [on|off|dump] 设置或者显示详细操作记录 参数为on,打开详细操作记录 参数为off,关闭详细操作记录 参数为dump,显示详细操作记录(每一个键值get、set、hit、del的次数) stats detail dump PREFIX copy_test2 get 1 hit 1 set 0 del 0 PREFIX copy_test1 get 1 hit 1 set 0 del 0 PREFIX cpy get 1 hit 0 set 0 del 0
相关推荐
使用memcache分布式数据系统减轻数据库的压力,使用memcache的版本的是java_memcached-release_2.5.3.jar
**Memcached 使用详解** Memcached 是一款高性能、分布式内存对象缓存系统,广泛应用于Web应用中,用于减轻数据库负载,提高网站性能。它通过在内存中存储数据,为应用程序提供快速的数据访问,避免了频繁读取...
在开发中,我们通常会使用编程语言提供的客户端库来操作Memcached。例如,对于Python,可以使用`python-memcached`库,Java有`spymemcached`,PHP有`php-memcached`等。以下是一些基本操作: - **添加缓存**:使用`...
计算机后端-PHP视频教程. Memcached03 memcached的基本使用.wmv
- 序列化:默认情况下,只有基本类型和字符串可以直接存入Memcached。对于自定义对象,需要实现`Serializable`接口或使用第三方序列化库。 8. **最佳实践** - 尽量减少单个缓存项的大小,以充分利用内存。 - ...
本文档主要涵盖了 Memcached 的基本概念、适用场景、不适用场景、安装过程以及 Java 客户端的使用示例。 **一、Memcached 概念** Memcached 是一种轻量级的、基于内存的缓存服务,适用于动态系统中的数据快速访问。...
**一、memcached的基本概念** 1. **分布式存储**:memcached不存储在单个服务器上,而是将数据分发到多台服务器,实现负载均衡。 2. **Key-Value存储**:memcached采用键值对(Key-Value)的方式存储数据,便于快速...
以上就是Memcached在Java环境中的基本使用方法。为了实现更高效、安全的缓存策略,你可以进一步研究Memcached的特性,如CAS(Compare and Swap)操作、持久化、分布式哈希等。同时,了解如何在大型分布式系统中优化...
### Java使用Memcached简单教程 #### 一、简介 Memcached是一个高性能的分布式内存对象缓存系统,通过减轻数据库负载来加速动态Web应用,提高网站的浏览速度。它通过在内存中缓存数据和对象来减少读取数据库的次数...
- 使用`memcached -h`命令查看帮助信息,了解安装选项。 - 运行`memcached -d install`命令进行服务安装。 - 安装完成后,通过`memcached -d start`命令启动Memcached服务。 3. **配置服务**: - 进入注册表...
计算机后端-PHP视频教程. Memcached04 memcached基本命令.wmv
“memcached安装及java应用使用memcached”这一标题暗示了我们要讨论的是一个关于分布式内存缓存系统——memcached的安装过程以及如何在Java应用程序中使用它。Memcached是一个高性能、轻量级的分布式内存对象缓存...
memcached的基本设置: -p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务...
除了基本的数据存储和检索命令外,Memcached还提供了一系列其他命令,如flush_all(清空所有缓存数据)、stats(获取服务器状态信息)、version(获取服务器版本信息)等。 ### 二、使用Memcached客户端库 #### ...
**Memcached 实例详解** ...通过以上的实例和讲解,你应该已经掌握了 Memcached 的基本使用,包括安装、客户端连接、数据缓存和清除。在实际应用中,合理利用 Memcached 可以显著提升系统的性能和响应速度。
### Memcached Client 使用手册 #### Cache Client 接口定义与功能概述 - **ICache**:作为缓存的基础接口,提供了缓存的基本操作方法。这些方法涵盖了缓存数据的存储、检索、删除等功能,旨在为应用程序提供高效...