缓存技术

memcached基本概念

Memcached是danga的一个项目,最早是为LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。 官方网站: www.danga.com  和 memcached.org

Memcached是一个高性能的分布式的内存对象缓存系统,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。

Memcached--原理示意图

简单的说: memcached就是在内存

中维护一张巨大的hash表,通过自己

的一套算法来维护数据的操作,这个

算法比较复杂,我们重点掌握如何在项目如何使Memcached技术. Memcached-安装 

安装步骤

①下载memcached软件

②将memcached软件拷贝到某个目录,最好放在php开发环境目录下,

便于管理

③cmd命令下执行,安装  memcached –d install [卸载使用 memcached -d uninstall]

④memcached –d start ,启动 memcached 服务

⑤查看memcached 服务是否启动成功! 默认端口11211

Win7系统要注意我们要进入c:\windows\system32,然后以管理员运行cmd.exe程序。

Linuxmemcache安装

Linux下是基于libevent事件,必须先按它

安装libevent时

./configure –with-libevent=/usr

Make && make install

安装memcached

./configure –with-libevent=/usr

Make && make install

启动Memcahced –d –m 128 –l 192.168.1.111 –p 11211 –u root

-m只内存,-l指允许的主机,-p端口,-u用户

停止: kill `cat /tmp/memcached.pid`;或Killall  memcached

telnet操作Memcached

Telnet可以操作memcache,不过win7以上版本默认没安装它,要到程序管理里面安装它。

Telnet localhost 11211  // 登陆memcache

Stats 查看状态,查看命中率9次6次命中

给saisai字段名增加一个值,字段位从1开始,时间1000秒,长度为10字节.

Set 可以用来更新字段,get来读取字段

Append追加字段,preppend前追加字段

Incr name number增加字段的值,decr name number减少字段的值,quit用来退出telnet连接

安装并配置Memcache扩展库

在php.ini文件添加:

extension=php_memcache.dll

并把对应的php_memcache.dll文件拷贝到 php/ext目录下

测试一下php环境

测试:

<?php

$mem = new Memcache;

$mem->connect(‘127.0.0.1’, 11211);

// $mem->addserver(“lamp”,11211);

// $mem->addserver(“192.168.12.1”,11211);   //开启多个

$mem->set(’test’, ‘Hello world!’, 0, 12);

$val = $mem->get(’test’);

echo $val;

?>

Memcache缓存数组和类:

$mem->add("myarr",array("aaa","bbb","ccc"));

print_r($mem->get("myarr"));

echo '<br>';

class  person{

var $name="zhangsan";

var $age=10;

}

$mem->add("myobj",new person);

var_dump($mem->get("myobj"));

$mem->close();

查看Memcache状态

echo $mem->getVersion();

echo '<pre>';

print_r($mem->getStats());

echo '</pre>';

$mem->close();

本文转自zsaisai 51CTO博客,原文链接:http://blog.51cto.com/3402313/1032811

网站提速-缓存技术(4)相关推荐

  1. 动易swCMS6.5网站的缓存技术分析

    动易swCMS6.5网站的缓存技术分析 动易swCMS6.5网站的缓存技术原理: 将网页的Html内容作为缓存的数据 保存在服务器的Application变量中 用来保存缓存数据的Applicatio ...

  2. WordPress自定义gravatar头像,缓存Gravatar头像为网站提速

    WordPress评论是一个网站的灵魂,直接决定着网站的收录和权重,然而wordpress头像默认的是gravatar头像,访问网站时,读取速度非常慢,gravatar头像的服务器是国外的,这不光自己 ...

  3. 网站缓存技术总结( ehcache、memcache、redis对比)

    网站技术高速发展的今天,缓存技术已经成为大型网站的一个关键技术,缓存设计好坏直接关系的一个网站访问的速度,以及购置服务器的数量,甚至影响到用户的体验. 网站缓存按照存放的地点不同,可以分为客户端缓存. ...

  4. 大型网站架构提速关键技术(页面静态化、memcached、Mysql优化)

    大型网站关键技术介绍 1. pv值(page views),访问量大 带来问题 a. 流量大 10000000*2m ->解决方案 买带宽 ,优化程序(处理图片) b. 并发量,同时访问网站的人 ...

  5. 企业上云,如何给网站提速?CDN加速一定要知道

    随着互联网的普及,上网用户越来越多,网站访问量增加.若网页加载缓慢,用户体验不佳则会迅速将关闭该页面,从而造成了网站用户的流失.为了提升用户体验,就要提高网站打开速度.那么,该如何给网站提速呢? 1. ...

  6. Smarty的配置与高级缓存技术

    前言 Smarty 是一个出色的PHP模板引擎,它分离了逻辑代码和user interface. 学习和使用Smarty,没有应用到它的缓存技术是一个很大的损失,它可以将用户最终看到的HMTL文件缓存 ...

  7. 亿级流量峰值没在怕,“缓存”技术来减压!

    许多大型互联网系统,如电商.社交.新闻等App或网站,动辄日活千万甚至上亿,每分钟的峰值流量在数十万以上,架构上如何应对如此高的流量峰值呢? 本文选自 <技术人修炼之道:从程序员到百万高管的72 ...

  8. 赠书:亿级流量峰值没在怕,“缓存”技术来减压!

    许多大型互联网系统,如电商.社交.新闻等App或网站,动辄日活千万甚至上亿,每分钟的峰值流量在数十万以上,架构上如何应对如此高的流量峰值呢? 本文选自 <技术人修炼之道:从程序员到百万高管的72 ...

  9. 为什么要使用页面缓存技术

    为什么要使用页面缓存技术 一.总结 一句话总结: 系统的瓶颈往往是来自于数据库,我们可以使用缓存来减少对数据库的访问! 系统都是逐渐演进的,一个系统在运行中必须是根据场景逐渐地提高优化性能.高并发就是 ...

最新文章

  1. Public Prize
  2. Spring boot返回JSON类型响应及Content-Type设置
  3. 中兴服务器raid配置_-服务器Raid卡更换后如何恢复硬盘Raid组信息
  4. java8 Map新增方法的使用
  5. 要成为一个 Java 架构师得学习哪些知识?
  6. pandas基础知识---4
  7. better-scroll使用的坑与心得
  8. 如何用html和css制作网页,html和css如何实现制作一个网页
  9. 实现监控摄像头RTSP视频流-Web端人脸识别-ffmpeg+websocket+jsmpeg方法总结
  10. R 语言图形函数 par()参数应用举例
  11. 推荐一个美中不失优雅的博客网主页(素材参考---麋鹿鲁哟)
  12. HDS NAS原理及Storage Pool方案
  13. 《目标》读后感,一本小说体的管理学著作
  14. 我们是久别重逢的朋友,还是一首完整的歌?
  15. 霹雳火s毕老师_$_Java笔记(一)
  16. 局域网攻击ettercap 详解(dns 欺诈)
  17. CISCO ASA 5520 snmp 协议启用
  18. openFrameworks下的肤色检测源码
  19. MXone Pro自适应2.0影视模板西瓜视频主题苹果cmsV10模板
  20. 苹果怎么强制恢复出厂_主板电池放电清BIOS恢复出厂设置怎么操作?配图文

热门文章

  1. init 0 init1 init 3 init 5 init 6 这几个启动级别都代表什么意思
  2. SpringBoot + MyBatis 之 Hello World
  3. 初次安装Linux(Ubuntu)(ssh,ftp服务安装)
  4. 简单的SQL语句 DDL
  5. 【Oracle】DBA_AUDIT_TRAIL表SES_ACTIONS字段对应的操作列表
  6. Java异常与异常处理简单使用
  7. 使用 ReSharper对.NET解决方案进行全面重构
  8. Android实际开发中的bug总结与解决方法(一)
  9. 解决python中csv文件中文写入问题
  10. 键盘快捷键将剪贴板内容粘贴到命令提示符窗口(Win XP)[关闭]