文档章节

Memcached

素人派
 素人派
发布于 2015/07/22 07:55
字数 633
阅读 33
收藏 0
  • 介绍
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。 Memcached使用简单的文本协议来通信,这样的话对于客户端的语言没什么特殊的要求。可以使用PHP、Python、Java等语言来连接,甚至可以直接使用telnet连接。
  • 安装
apt-get install memcached 安装完成后可以看到下面的进程 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
  • 配置
/etc/memcached.conf 默认配置可能只是监听本地请求,如果想从其他服务器中访问的话需要修改监听地址。
  • 启动服务
service memcached start
  • telnet客户端
连接的命令格式为:telnet ip port,例如: telnet localhost 11211 存储命令格式:<cmd> <key> <flags> <exptime> <bytes> <cmd>可以是set、add或者replace,<key>索引,<flags>是整型参数(客户端使用这个保存键值对以外的信息),<exptime>为该数据的存活时间(以秒为单位,0表示永远),<bytes>为数据的字节数。 读取数据命令格式:<cmd> <key> <cmd>可以是get,<key>为索引。 删除数据命令格式:<cmd> <key> <cmd>可以是delete,<key>为索引。 例如: Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. set suren 0 0 5 suren STORED get suren VALUE suren 0 5 suren END delete suren DELETED get suren END
  • Python客户端
安装第三方库:easy_install python-memcached 下面是使用示例: Python 2.7.6 (default, Mar 22 2014, 22:59:56) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import memcache >>> memcache = memcache.Client(['localhost:11211']) >>> print memcache <memcache.Client object at 0x7fe6865cc6d0> >>> print memcache.set('suren', 'http://surenpi.com') True >>> value = memcache.get('suren'); >>> print value http://surenpi.com >>>
  • Java客户端
下载地址: https://github.com/gwhalin/Memcached-Java-Client/downloads 需要的jar文件包括:java_memcached-release_2.6.6.jar、commons-pool-1.5.6.jar、slf4j-simple-1.6.1.jar、slf4j-api-1.6.1.jar。 下面是示例代码: [codesyntax lang="java"]
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;


/**
 * @author suren
 * @date 2015-4-8
 * memcache客户端测试类
 * http://surenpi.com
 */
public class MemcacheTest
{

	/**
	 * @param args
	 */
	public static void main(String[] args)
	{
		String[] servers = {"surenpi.com:11211"};
		SockIOPool pool = SockIOPool.getInstance();
		pool.setServers(servers);
		pool.setFailover(true);
		pool.setInitConn(10);
		pool.setMinConn(1);
		pool.setMaxConn(20);
		pool.setNagle(false);
		pool.setSocketTO(3000);
		pool.setAliveCheck(true);
		pool.initialize();

		MemCachedClient memClient = new MemCachedClient();
		for(int i = 0; i < 5; i++)
		{
			System.out.println(memClient.set(String.valueOf(i), i));

			System.out.println(memClient.get(String.valueOf(i)));
		}
	}

}
[/codesyntax]
  • 参考
http://baike.baidu.com/link?url=nKa046NJjO_CVOE3dAGw6SLq01GAb9BlsFjah1nu06ZjYYd4vew4T_JjtB-sdTltI0_xiUfgjeqQArMMVxYXF_ Python如何在线安装第三方库?请看这里。

本文转载自:http://surenpi.com/2015/04/08/memcached/

上一篇: ipmitool
素人派

素人派

粉丝 27
博文 1907
码字总数 10223
作品 6
东城
程序员
私信 提问
nginx + memcached + tomcat 负载均衡

[root@server1 ~]# service memcached status memcached dead but subsys locked [root@server1 ~]# [root@server1 ~]# service memcached stop Stopping memcached: [FAILED] [root@server1......

剑侠情缘
2015/03/27
324
1
基于条件测试实现角色调用

基于条件测试实现角色调用 实例:指定 memcached 的运行内存大小为总大小的 1/4,并只有centos 7版本系统才执行操作 ` [root@localhost ~]# mkdir -pv /etc/ansible/roles/memcached/tasks [...

网费
2016/05/25
0
0
Memcached Specific Presentations and Documentation

Resources Resources / Articles / Books Updated Aug 22, 2011 Articles LinuxJournal article by Brad Fitzpatrick (2004) fotolog's memcached usage and patterns (2008) LinuxJournal p......

Koma
2016/04/12
10
0
opensuse搭建的linux环境下,安装memcached,出现如下错误,怎么解决?

make all-am make[3]: Entering directory `/root/linux/memcached-1.4.13/doc' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/root/linux/memcached-1.4.13/doc......

streamlong
2012/08/22
683
0
memcached完全剖析–1. memcached的基础

memcached完全剖析–1. memcached的基础 memcached全面剖析–2.理解memcached的内存存储 memcached全面剖析–3.memcached的删除机制和发展方向 memcached全面剖析–4. memcached的分布式算法...

云栖希望。
2017/12/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

面试题必备-web页面基础

html标签是由<>包围的关键词 html标签是成对出现的 有部分标签是没有结束标签的,叫单标签, 页面中所有的内容,都是要放在HTML标签中的 HTML标签分三部分: 标签名称 标签内容 标签属性 HT...

达达前端小酒馆
27分钟前
2
0
OSChina 周二乱弹 —— 女装大佬被拆穿是妹子假扮

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐:《All of the Stars》- Ed Sheeran 《All of the Stars》- Ed Sheeran 手机党少年们想听歌,请使劲儿戳(这里) @Leon_swool ...

小小编辑
36分钟前
130
4
3. 彤哥说netty系列之Java BIO NIO AIO进化史

你好,我是彤哥,本篇是netty系列的第三篇。 欢迎来我的公从号彤哥读源码系统地学习源码&架构的知识。 简介 上一章我们介绍了IO的五种模型,实际上Java只支持其中的三种,即BIO/NIO/AIO。 本...

彤哥读源码
39分钟前
11
0
02.日志系统:一条SQL更新语句是如何执行的?

我们还是从一个表的一条更新语句说起,我们创建下面一张表: create table T(ID int primary key, c int); 如果要将ID=2这一行c的值加1,SQL可以这么写: update T set c=c+1 where ID=2; 前...

scgaopan
今天
9
0
【五分钟系列】掌握vscode调试技巧

调试前端js 准备一个前端项目 index.html <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1......

aoping
今天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部