Memcached的使用
为什么要使用Memcached?
1)高并发访问数据库的痛:死锁
2)磁盘IO之痛
3)读写性能完美
4)超简单的集群搭建Cluster
5)开源
6)性能最佳
7)丰富的成功案例
Memcached是一个高性能的支持分布式的内存存储系统。你可以把他看成一个巨大的hash表。形式入:
Key(键) Value(值)
唯一键值(String) 基本数据(整型, 浮点型,字串,布尔) ,复合类型 (数组, 对象) ,特殊类型(NULL, 不能存放资源), 二进制数据(图片,视频,音频)
注意:Redis在存入对象的时候,不能直接存入,而是要先序列化,然后再存入,使用的时候,再反序列化。
Memcached的安装和配置(在windows安装)
(1) 下载安装文件 memcached.exe
(2) 安装指令cmd>{%mem%}/memcached.exe -d install
(3) 使用cmd>{%mem%}/memcached -d start 【启动】
如果启动成功,我们可以使用
cmd>netstat -an
如果发现有一个 11211端口在监听则说明你的服务OK
补充:
我们也可以把memcached当做一个程序来使用,
cmd>{%mem%}/memcached.exe -p 端口号
(4) 使用telnet工具登录到Memcached 中进行操作
cmd>telnet 127.0.0.1 11211
注意:Memcached安装不成功的原因和解决
可能安装失败的原因分析
6.1 如果你是用win7,win8系统,他对安全性要求高,因此,需要大家使用管理员的身份来安装和启动. 具体是 程序开始===>所有程序==》附件==》cmd(单击右键,选择以管理员的身份来执行)
6.2 存放memcache.exe 目录不要有中文或者特殊字符
6.3 安装成功,但是启动会报告一个错误信息,提示缺少xx.dll ,你可以从别的机器拷贝该dll文件,然后放入到system32下即可,并执行【然后打开“开始-运行-输入regsvr32 /s MSVCR71.dll”,回车即可解决错误提示!】,这是因为有些电脑上装的操作系统是阉割版的。
6.4 如果上面三个方法都不可以,你可以直接这样启动mem
cmd>memcached.exe -p 端口 【这种方式不能关闭窗口】
集群搭建原理:
Memcache服务器端并没有提供集群功能,但是通过客户端的驱动程序实现了集群配置。
客户端实现集群的原理:首先客户端配置多台集群机器的ip和端口的列表。然后客户端驱动程序在写入之前,首先对key做哈希处理得到哈希值后对总的机器的个数进行取余然后就选择余数对应的机器。
最后再补充一点:
1.1 memcached的数据生命周期
当一个键值对存放到mem中,在以下情况将会被销毁
(1) 时间到(生命周期从存放时就开始计算)
(2) 你使用delete函数,删除 flush_all
(3) 重启mem服务
(4) 重启系统
1.2 memcached插入数据的原则(说的不全,希望大家多多包涵)
(1) 变化频繁,具有不稳定性的数据,不需要实时入库。(比如在线人数,在线状态,用户评分)
(2) 门户网站的新闻,觉得页面静态化不能满足需求,可以放入到mem中。(配合JQuery的AJAX请求)
1.3 什么样的数据不适合放入memcached中
(1)过大的数据、特别重要的数据
Memcached的使用的更多相关文章
- 支持 .NET Core 的 Memcached 客户端 EnyimMemcachedCore
1. 介绍 EnyimMemcachedCore 是一个支持 .NET Core 的 Memcached 客户端,是从 EnyimMemcached 迁移至 .NET Core的,源代码托管在 Git ...
- Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作
一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...
- ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存
ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存 part 1:给我点时间,允许我感慨一下2016年 正好有时间,总结一下最近使用的一些技术,也算是为2016年画上一个完 ...
- 缓存、队列(Memcached、redis、RabbitMQ)
本章内容: Memcached 简介.安装.使用 Python 操作 Memcached 天生支持集群 redis 简介.安装.使用.实例 Python 操作 Redis String.Hash.Li ...
- 企业做数据缓存是使用Memcached还是选Redis?
企业是使用Memcached还是选Redis? 在构建一款现代且由数据库驱动的Web应用程序并希望使其拥有更为出色的性能表现时,这个问题总会时不时出现.并给每一位开发人员带来困扰.在考虑对应用程序的性 ...
- NoSql1 在Linux(CentOS)上安装memcached及使用
前言: 今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...
- Memcached简介
在Web服务开发中,服务端缓存是服务实现中所常常采用的一种提高服务性能的方法.其通过记录某部分计算结果来尝试避免再次执行得到该结果所需要的复杂计算,从而提高了服务的运行效率. 除了能够提高服务的运行效 ...
- Linux 服务器 安装 memcached
linux centos 一.memcached的安装 1.下载 memcached-1.4.33.tar.gz.libevent-2.0.22-stable.tar.gz 安装 memcached ...
- Memcached和Redis比较
一.存储 Memcached基本只支持简单的key-value存储方式.Redis除key-value之外,还支持list,set,sorted set,hash等数据结构:Redis支持数据的备份, ...
- 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展
上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...
随机推荐
- Azure VM上传小文件
因为需要传一些脚本到Azure的VM里,有个简单方法可以实现,如下 编辑这个rdp文件 点击确定,连接远程计算机 可以在我的电脑里看到本地硬盘
- 分享一个动态生成RDLC报表的类
在实际工作中,当需要进行大批量查询和生成报表的时候,可以使用我写的类. 特点: 无需报表设计器.无需为报表设置数据集 只需要传入查询结果就可以全自动生成报表,传入的对象为Dynamic(目前支持Dat ...
- form提交的几种方法
一. form表单中有 type是submit类型的button,点击 submit,从而会post数据,引发回传. <form action="?" name=" ...
- mvc中测试网络
.//控制器层面 public string IsAnyNetworkAvailable() { try { foreach (NetworkInterface ni in NetworkInterf ...
- .NET分布式事务处理
在进行数据持久化的时候,我们会经常用到事务处理.一般情况下,ADO.NET中的事务处理就能够满足我们的需要,但是,ADO.NET中的事 务不能同事对多个数据库连接进行原子性的操作:如果在你的业务环境中 ...
- wampserver 2.5多站点配置
wampserver2.5版本与之前老版本配置有区别,假设wamp安装在d:/wamp下.第一步:修改D:/wamp/bin/apache/apache2.4.9/conf/httpd.conf 文件 ...
- Linux部署Apache Solr5.5.2+Apache Zookeeper3.4.6
一.官网下载所需包. solr-5.5.2.tgz 下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/5.5.2/ zookee ...
- iOS AFNetworking HTTPS 认证
HTTPS 中双向认证SSL 协议的具体过程: 这里总结为详细的步骤: ① 浏览器发送一个连接请求给安全服务器. ② 服务器将自己的证书,以及同证书相关的信息发送给客户浏览器. ③ 客户浏览器检查服务 ...
- Safari浏览器中对js Date对象的支持
看了一下自己上一次写博客还是3月份,那是还没有毕业,实习也没那么多事情,毕业设计也才刚开始做,那时天天晚上都把电脑带回家继续学习,而现在一工作忙为借口已经不怎么进行什么知识总结了,只是在印象笔记里做做 ...
- CAD2008 启动慢 卡住
CAD2008打开很慢解决CAD2008打开很慢的方法: 第一个:1.[开始]―[控制面板]. 2.选择[网络和Internet连接]选项,再点[Internet选项]. 3.在Internet属性对 ...