一脚踏进Memcached的大门

简介: Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。

img_b1575a4e75cb08e25685bef2611a6ec4.png

一、Memcached简介

Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。

Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素。

Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。

Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。它的API兼容大部分流行的开发语言。

本质上,它是一个简洁的key-value存储系统。

一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。
img_4e64c298a9e5a14c830a016cf3be2ee5.png

二、Memcached的特性

memcached作为高速运行的分布式缓存服务器,具有以下的特点。

  • 协议简单
  • 基于libevent的事件处理
  • 内置内存存储方式
  • memcached不互相通信的分布式

三、Linux下的安装使用

yum install memcached
如果缺少其他包请安装以下组件
yum groupinstall "Development Tools"

四、Memcached配置文件

Memcached的配置文件非常的简单,如果不需要改动就按默认的然后直接启动即可。
主程序:/usr/bin/memcached
配置文件:/etc/sysconfig/memcached

# cat /etc/sysconfig/memcached 
PORT="11211"                                # memechaced监听的端口
USER="memcached"                            # 运行程序的用户
MAXCONN="1024"                              # 最大并发连接数
CACHESIZE="64"                              # 缓存大小
OPTIONS=""

五、Memcached的运行命令

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

作为后台程序运行
 /usr/local/memcached/bin/memcached -p 11211 -m 64m -d

六、Memcached的连接

memcached默认没有认证机制,可借用于SASL进行认证;所以要想连接memcahced的话直接使用最简单的telnet命令即可连接

telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set foo 0 0 3                                                   保存命令
bar                                                             数据
STORED                                                          结果
get foo                                                         取得命令
VALUE foo 0 3                                                   数据
bar                                                             数据
END                                                             结束行
quit                                                            退出
目录
相关文章
|
2月前
|
存储 缓存 数据库
【赵渝强老师】安装部署Memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于减轻数据库压力,支持高负载网站。本文介绍了 Memcached 的安装步骤,包括下载、解压、配置和启动服务,帮助用户快速上手。
|
3月前
|
开发框架 自然语言处理 PHP
PHP在Web开发中的持久魅力与创新实践###
【10月更文挑战第17天】 本文探讨了PHP作为一门老牌却充满活力的编程语言,在现代Web开发中的独特优势和未来趋势。通过分析其简洁性、灵活性、强大生态系统及不断创新的特性,本文旨在揭示PHP为何能持续吸引开发者,并在技术快速迭代的时代保持竞争力。同时,文章也展望了PHP在未来Web开发领域的发展潜力,强调其在技术创新和社区支持下,依然能够引领Web开发的新潮流。 ###
45 9
|
6月前
|
存储 缓存 算法
深入了解Memcached:缓存技术的利器
Memcached是一个开源的高性能分布式内存缓存系统,用于加速动态Web应用。它通过将数据库查询结果、API调用结果或其他数据缓存到内存中,减少对数据库的访问频率,从而提高应用的响应速度。本文详细介绍了Memcached的基本原理、架构、安装配置、使用方法、测试方法以及应用场景。通过Memcached,开发者可以有效提升Web应用的性能,减少数据库负载,改善用户体验。
75 5
|
存储 SQL 缓存
Memcache技术精华
还在等什么,快来一起讨论关注吧,公众号【八点半技术站】,欢迎加入社群
|
消息中间件 存储 缓存
Redis 的 4 大法宝,2018 必学中间件!
Redis是什么? 全称:REmote DIctionary Server Redis是一种key-value形式的NoSQL内存数据库,由ANSI C编写,遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
108 2
|
存储 算法 NoSQL
好好耕耘 redis和memcached的区别
原文:好好耕耘 redis和memcached的区别 观点一: 1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等; 2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储; 3、虚拟内存--Redis当物理内存用完时,可以将一些很久没用到的value 交换到磁盘; 4、过期策略--memcache在set时就指定,例如set key1 0 0 8,即永不过期。
1225 0
|
缓存 PHP 数据库