memcached分布式缓存服务器学习总结

实验楼:https://www.shiyanlou.com/

以下学习总结主要通过实验楼环境

memcached:高速运行的分布式缓存服务器

特点:
(1)协议简单
(2)基于libevent的事件处理
(3)内置内存存储方式
(4)不互相通信的分布式

适用场景:
(1)网站包含了访问量很大的动态网页,因而数据库的负载将会很高,且大部分数据库请求都是读操作。
(2)数据库服务器的负载比较低,CPU使用率较高;
(3)小型需要共享的数据,如session等临时数据;
(4)缓存一些很小但是被频繁访问的文件。

不适用场景:
(1)缓存对象的大小大于 1 MB, Memcached 本身就不是为了处理庞大的多媒体和巨大的二进制块而设计的,如果你任性,要存这么大的数据,可以自己修改源代码,它是开源的,不过请慎改;
(2)key 的长度大于 250 字符(硬性要求);
(3)环境不允许运行 memcached 服务,如虚拟主机;
(4)应用运行在不安全的环境中,Memcached 未提供任何安全策略,仅仅通过 telnet 就可以访问到 memcached。数据安全越来越重要了,so,请把它放在防火墙后;
(5)业务需要的是持久化数据时请使用数据库。

安装memcached
以ubuntu系统为环境
著名的 linux 系统基本上分为两大类:
(1)RedHat 系列:Redhat、Centos、Fedora 等 其常见的安装包格式 rpm, 安装 rpm 包的命令是“rpm -参数” ,包管理工具 yum。
(2)Debian 系列:Debian、Ubuntu 等 其常见的安装包格式 deb, 安装 deb 包的命令是“dpkg -参数”,包管理工具 apt-get。 本课程环境为 Ubuntu,所以可以下载对应的 deb 包或者直接通过 apt-get 工具安装。这里采用 apt-get 方式安装,最简单。

1、包管理工具
安装:sudo apt-get install memcached
卸载:sudo apt-get --purge autoremove memcached (包括配置文件)

查看是否存在相关文件:sudo find / -name ‘memcached‘

2、源码安装
(1)查看软件是否安装
dpkg -l | grep ‘libevent‘
dpkg -l | grep ‘memcached‘

(2)下载源码
wget http://labfile.oss.aliyuncs.com/libevent-2.0.21-stable.tar.gz
wget http://labfile.oss.aliyuncs.com/memcached-1.4.22.tar.gz

(3)解压
tar -zxvf libevent-2.0.21-stable.tar.gz
tar -zxvf memcached-1.4.22.tar.gz

(4)安装(应用configure)
先安装libevent(因为memcached依赖libevent类)
./configure && make && sudo make install

"&&"符 即 and,顺序执行一系列指令,如果上一步成功,则执行下一步,反之停止之后的指令。
命令详解:
第一步:‘./configure‘,一般源码目录中会有 configure文件,来确定机器是否安装了所需的依赖库,然后配置编译器,告诉系统安装目录等等。用户可以在这一步使用附加选项选择需要编译的模块;
第二步:make,编译源码,打包成“安装包”;
第三步:make install,编译“安装包”,形成可执行的二进制文件,完成安装;

判断libevent是否安装成功 ls -al /usr/lib | grep libevent

启动memcached
memcached -d -m 256 -u root -l localhost -p 11210 -c 256 -P /tmp/memcached.pid

时间: 2024-08-19 02:21:06

memcached分布式缓存服务器学习总结的相关文章

memcached分布式缓存服务器学习总结(二)memcached状态查询

linux memcached状态查询如何查看memcached服务器端版本: ./memcached -h memcached的运行状态可以方便的用 stats 命令显示. 首先用telnet 127.0.0.1 11211这样的命令连接上memcache,然后直接输入stats就可以得到当前memcache的状态. 这些状态的说明如下: pid memcache服务器的进程IDuptime 服务器已经运行的秒数time 服务器当前的unix时间戳version memcache版本point

memcached分布式缓存

1.memcached分布式简介 memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能.Memcache集群主机不能够相互通信传输数据,它的“分布式”是基于客户端的程序逻辑算法进一步实现的. 请看下面简图: 根据上图我们简述分析分布式memcached的set与get的过程 set过程: 1.首先通过应用程序set(‘key’,’value’) 2.进入程序,使用key通过逻辑算法得出这个key需要存储的节点位置 3.根据节点位置连接相应的memcached服务器,并发

Discuz!NT中集成Memcached分布式缓存

大约在两年前我写过一篇关于Discuz!NT缓存架构的文章,在那篇文章的结尾介绍了在IIS中如果开启多个应用程序池会造成多个缓存实例之间数据同步的问题.虽然给出了一个解决方案,但无形中却把压力转移到了磁盘I/O上(多个进程并发访问cache.config文件).其实从那时起我就开始关注有什么更好的方案,当然今天本文中所说的Memcached,以及Velocity等这类的分布式缓存方案之前都考虑过,但一直未能决定该使用那个.起码Velocity要在.net 4.0之后才会提供,虽然是原生态,但有些

Discuz!NT中集成Memcached分布式缓存(转)

大约在两年前我写过一篇关于Discuz!NT缓存架构的文章,在那篇文章的结尾介绍了在IIS中如果开启多个应用程序池会造成多个缓存实例之间数据同步的问题.虽然给出了一个解决方案,但无形中却把压力转移到了磁盘I/O上(多个进程并发访问cache.config文件).其实从那时起我就开始关注有什么更好的方案,当然今天本文中所说的Memcached,以及Velocity等这类的分布式缓存方案之前都考虑过,但一直未能决定该使用那个.起码Velocity要在.net 4.0之后才会提供,虽然是原生态,但有些

缓存应用--Memcached分布式缓存简介

一.   什么是Memcached Memcached 是一个高性能的分布式内存 对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象 来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度. 相信很多人都用过缓存,在 .net 中也有内置的缓存机制,还有很多第三方工具如apache,nginx等可以做静态资源的缓存,同时我们也可 以制定自己的缓存机制,缓存数据库查询的数据以减少对数据库的频繁操作.但是很多时候我们总是感觉这些缓存总不尽人意, Memcached可以

Memcached分布式缓存初体验

1 Memcached简介/下载/安装 Memcached是一个高性能的不是内存对象缓存系统,用于动态Web应用以减轻数据库负载.Memcached基于一个存储键/值对的HashMap.其客户端可以使用任何语言进行编写,并通过Memcached协议与进行通信 下载memcached-win64-1.4.4-14 的windows稳定版 cmd命令(win+R),切换到解压包的指定目录,并且输入命令:memcached.exe -d install(与之对应memcached.exe -d uni

Memcached 分布式缓存实现原理

摘要 在高并发环境下,大量的读.写请求涌向数据库,此时磁盘IO将成为瓶颈,从而导致过高的响应延迟,因此缓存应运而生.无论是单机缓存还是分布式缓存都有其适应场景和优缺点,当今存在的缓存产品也是数不胜数,最常见的有redis和memcached等,既然是分布式,那么他们是怎么实现分布式的呢?本文主要介绍分布式缓存服务mencached的分布式实现原理. 缓存本质 计算机体系缓存 什么是缓存,我们先看看计算机体系结构中的存储体系,根据冯·诺依曼计算机体系结构模型,计算机分为五大部分:运算器.控制器.存

C# 分布式缓存服务器方案

原文地址:http://www.wlm.so/Article/Detail/lmb4a50pydswh00000 先上图,然后再解释: 所有web服务器做多机集群,所有web服务器向缓存服务器1进行读写,缓存服务器1组成双机热备. 缓存服务器1作为主缓存服务器,向web服务器提供缓存服务器. 在缓存服务器1上做配置,配置其他缓存服务器组,可以有N组,每组都是双机热备. 所有缓存服务器通过remoting提供缓存服务. 缓存通过key,在缓存服务器1上进行判断key在哪个区间,每个区间对应一个服务

利用memcached做缓存服务器,为后端tomcat服务器做会话保持,利用httpd的jk模块模块做负载均衡

前端使用httpd作为反代负载均衡至后端tomcat主机:tomcat可用memcached当做会话服务器保存会话: 实验环境:物理机win7,虚拟机centos7 node1:172.18.11.111 TomcatA node2:172.18.11.112 TomcatB node3:172.18.11.113 调度器httpd 安装tomcat 分别在node1和node2安装tomcat: ]# yum -y install java-1.7.0-openjdk java-1.7.0-o