`

memcached基本介绍及命令

阅读更多

用了一段时间memcache,没有认真的看过,了解下顺便做下笔记。

1. memcached

memcached是danga的一个项目,是一种高性能分布式缓存技术,将数据缓存到内存中,来提高访问速度。(目的:提速)

 

注:当内存一旦关闭,数据就会丢失;推荐存储一些频繁变化(比如统计在线人数)、检索(热点数据)且数据丢失也没影响。

 

memcached维护了一张大的hashmap内存表,以key-value形式存储,可以存放的类型(字符串、数值、boolean、对象、二进制、数组)

 

memcached是线程安全的。

 

libevent是一套跨平台的事件处理接口的封装

memcached使用libevent来进行网络并发连接的处理,能够保持在很大的并发情况下,仍旧能够保持快速的响应能力。

 

memcached在内容容量达到指定值得情况下使用LRU算法自动删除不使用的缓存。

应该每一次存储会记录时间戳,当容量到达瓶颈时找到时间最久的进行替换。

 

memcached是分布式缓存服务器,但服务器没有分布式功能,各个memcached不会互相通信以共享信息,所以这完全取决于客户端的实现。

 

 

2. 下载(略过)

 

3. 安装启动

以window为例,管理员身份打开控制台

几种方式

1.

1.1. 将memcached加入到后台进程中,打开命令控制台,进入到memcached根目录,输入 memcached.exe -d install 执行安装(卸载:memcached.exe -d  uninstall)

1.2. 启动net start memcached(停止 net stop memcached) 或者 memcached.exe -d start (停止memcached.exe -d stop)

2. 直接双击打开memcached.exe文件

3. 控制台命令memcahed.exe -p 11211 (11211为memcached默认端口,端口可以自行修改)

 

其他dot命令自行百度,比如查看端口是否被占用等。。。

 

4. memcached基本命令

使用telnet测试

telnet是tcp/ip中一份子,是internet登录远程服务的标准协议和主要方式。

 

命令行:telnet ip 端口  

如果提示未找到telnet 是由于未开启,可到《添加或删除程序中将其开启》如图:

 

 

 

 

memcached命令

 

格式:

<command name> <key> <flags> <exptime> <bytes><data block>

<command name> set/add/replace/delete......
<key> key值,唯一
<flags> 客户端使用它存储关于键值对的额外信息
<exptime> 数据存活时间,0代表永久
<bytes> 数据字节数
<data block> 存储数据块,长度需要等于<bytes>

add : 创建一个键值对存储


 

set:如果key不存在则创建,存在则覆盖。
 

 

replace:要求key必须存在,否则提示no_stored



 

delete:如果key存在提示deleted如果不存在提示no_found

语法:delete key

append:在原有的key值后面增加数据

语法:append key 0 0 2

prepend:在key原有的数据前面增加

同上

flush_all:立即使所有存在的元素失,它并不会立即删除所有资源,只是标记,因此已经使用的内存会被新的数据复写。

stats:查看当前memcached的一些基本状态,比如版本,启动时间,命中率,连接数,命令执行次数等等

值得关注的是:通常我们可以根据命中率来判断当前内存中缓存的数据是否合理,如果命中率偏低,那么代表有很多数据存到内存中并没有使用,且无意义的占用了内存,可以据此优化memcached存储。



 

Pid: Memcached 服务器中的进程编号

UptimeMemcached服务器启动之后所经历的时间,单位秒

Time 当前系统时间,单位秒

Version: Memcached 的版本号

pointer_size:服务器所在主机操作系统的指针大小,一般为3264

curr_items:表示当前缓存中存放的所有缓存对象的数量

total_items:表示从memcached服务启动到当前时间,系统存储过的所有对象的数量,包括已经删除的对象

bytes:表示系统存储缓存对象所使用的存储空间,单位为字节

curr_connections:表示当前系统打开的连接数

total_connections:表示从memcached服务启动到当前时间,系统打开过的连接的总数

cmd_get 查询缓存的次数,即使不成功也算一次

cmd_set 保存数据的次数,当然这里只保存成功的次数

get_hits:表示获取数据成功的次数。

get_misses:表示获取数据失败的次数。

evictions:为了给新的数据项目释放空间,从缓存移除的缓存对象的数目。比如超过缓存大小时根据LRU算法移除的对象,以及过期的对象

bytes_readmemcached服务器从网络读取的总的字节数

bytes_writtenmemcached服务器发送到网络的总的字节数

limit_maxbytesmemcached服务缓存允许使用的最大字节数

threads:被请求的工作线程的总数量

 

缓存命中率 = get_hits / cmd_get * 100% ; 

  • 大小: 111.5 KB
  • 大小: 864 Bytes
  • 大小: 1.3 KB
  • 大小: 1.7 KB
  • 大小: 10.1 KB
分享到:
评论

相关推荐

    计算机后端-PHP视频教程. Memcached04 memcached基本命令.wmv

    计算机后端-PHP视频教程. Memcached04 memcached基本命令.wmv

    memcached命令

    根据给定文件提供的信息,我们将详细介绍memcached的基本命令及其参数的意义。 1. **-l**:指定memcached监听的IP地址,默认为本机所有IP地址。 - 示例:`-l 127.0.0.1` 表示只监听本机的127.0.0.1地址。 2. **-p...

    Memcached基本使用

    **Memcached基本使用** Memcached是一款高性能、分布式内存对象缓存系统,用于减轻数据库负载,提升Web应用性能。它的工作原理是将数据存储在内存中,以便快速访问,避免频繁读取硬盘上的数据库。在本篇文章中,...

    开发文档 memcached的基本命令

    本文将深入解析memcached的基本命令,涵盖其安装、配置、启动及数据管理等方面,旨在为用户提供全面的操作指南。 ### 安装与配置命令 #### 启动与停止 - `-d start`:启动memcached服务。 - `-d restart`:重启...

    memcached几个命令

    标题中的“memcached几个命令”指的是在使用memcached这一分布式内存对象缓存系统时,经常用到的一些核心命令。memcached被广泛应用于大型网站设计,尤其是对于PHP程序员来说,掌握这些命令是至关重要的。 首先,...

    memcached客户端文件及服务端

    **Memcached介绍** Memcached是一种高性能、分布式的内存对象缓存系统,用于在数据库和应用程序之间缓存数据,以减少对数据库的访问压力,提高应用的响应速度。它最初由Danga Interactive公司开发,现在已经成为...

    Net Memcached安装及使用说明

    ### Net Memcached安装及使用说明 #### 一、概述 Net Memcached是一种高效的分布式缓存系统,主要用于硬盘缓存服务,能够充分利用硬盘空间来存储缓存信息,从而直接提升访问速度,同时不会占用过多的内存资源。这...

    Memcached常用命令以及使用说明详解

    Memcached是一种高性能的分布式内存...总之,熟练掌握Memcached的这些基本命令,可以帮助开发者更高效地管理和操作缓存数据,提升应用程序的性能。在实际使用中,根据具体需求选择合适的命令和策略,是优化系统的关键。

    memcached windows稳定版

    在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装 3. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动...

    Memcached学习笔记 — 第四部分:Memcached Java 客户端-gwhalin(1)-介绍及使用

    本篇学习笔记将重点介绍如何在Java环境中使用gwhalin提供的Memcached客户端进行开发。gwhalin的Memcached Java客户端是一个轻量级、高性能的库,使得Java开发者可以轻松地与Memcached服务器进行交互。 ### 一、...

    Memcached 统计与监控

    `stats` 命令可以用来查看Memcached的整体统计信息,包括版本号、当前时间戳、启动时间、连接数、命令执行次数等。具体命令如下: ```sh stats ``` 示例输出: ``` STAT pid 27835 STAT uptime 297 STAT time ...

    memcached 命令行状态全解

    本文将介绍如何使用 Telnet 命令来查看 Memcached 的运行状态。 一、Telnet 命令 Telnet 是一个基本的网络协议,用于远程登录和查看服务器的状态。我们可以使用 Telnet 命令来连接 Memcached 服务器,并查看其运行...

    Memcached缓存技术资料源码

    **一、Memcached基本概念** 1. **缓存**: 缓存是一种存储技术,用于临时存储频繁访问的数据,减少对后端慢速存储(如数据库)的访问,提高系统性能。 2. **分布式**: Memcached支持在多台服务器上部署,可以将数据...

    memcached安装包以及java所需的memcached架包

    5. **验证运行**:你可以使用`netstat -tulnp | grep memcached`命令检查memcached是否正常运行,并监听在指定端口。 **Java与memcached的交互**: 为了在Java应用中使用memcached,你需要一个Java客户端库。在提供...

    Memcached源码剖析笔记.docx

    Memcached 的其他命令包括 stats、flush_all 和 version 等,分别用于查看 Memcached 的状态、清空 Memcached 中的数据和获取 Memcached 的版本信息。 10. Memcached 内部工作机制 Memcached 的内部工作机制主要...

Global site tag (gtag.js) - Google Analytics