lnmp的数据库缓存---->memcache
来源:互联网 发布:社会支持网络理论ppt 编辑:程序博客网 时间:2024/05/17 07:02
最近做了lnmp架构的搭建,在完成后,我们先对这个架构进行分析,当请求到达,nginx接受,如果是静态nginx直接返回数据,如果是动态nginx会将请求向后转发给php/tomcat,php去mysql中查找从而返回
在优化的过程中,我们最重要的是对I/O进行处理。 cpu从内存拿数据比从磁盘拿数据要快很多,所以我们来看整个lnmp可供我们加缓存以优化。
关于i/o
当客户端请求静态数据,nginx自己处理,这里会有磁盘I/O;
当客户端请求动态数据,nginx通过fastcgi把请求转交给后面的应用程序服务器,当这些应用程序拿数据就需要去后面的MySQL去拿,这里就又有一个磁盘I/O。
一、缓存系统
1.memcache
memcache是一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著[1] 。这是一套开源软件,以BSD license授权发布。
二:配置
操作前提:已安装配置好php,
1.下载memcache安装包,并且将memcache解压
# wget http://pecl.php.NET/get/memcache-2.2.3.tgz# tar -zxf memcache-2.2.3.tgz
2.将php安装路径下的bin的绝对路径添加到环境变量当中
# vim ~/.bash_profilePATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin# source ~/.bash_profile
3.在memcache的解压目录下执行phpize
# cd memcache-2.2.3/# phpize #phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
4.安装php-devel,如果已经安装过了就不用了
# yum install -y php-devel
5.编译安装memcached
# ./configure# make install# install
6.在配置文件中添加memcached模块
# vim php.ini在第851行后面任意一行添加 extension=memcache.so# /etc/init.d/php-fpm reload #重启php-fpm# php -m | grep memcache #这回可以显示出来memcache,代表php已经成功安装上了动态模块memcache
7.安装memcached,开启memcached服务
# yum install memcached -y# /etc/init.d/memcached start
memcached是监听在11211端口上的
/etc/sysconfig/memcached文件:
文件中内容如下
PORT=”11211″ #监听端口USER=”root” #使用的身份MAXCONN=”1024″ #同时最大连接数CACHESIZE=”64″ #使用的内存大小OPTIONS=”" #附加参数,例如:OPTIONS=”-l 127.0.0.1″,只能本机访问,不对公网开放实验:从网页上测试并查看memcache的命中率将解压目录下的example.php,memcache.php放到nginx的发布目录里面example.php:用来连接memcache并发起请求memcache.php:能显示memcache的命中率
memcache.php需要修改为下图所示
访问memcache.php,通过访问example.php来对memcache发起连接
这里要添的就是上图的用户memcache和密码westos
1.客户端发来请求
2.如果是静态的nginx自己就处理了,如果是动态的,nginx会将请求向后转发给php/tomcat,
3.此时php/tomcat会先去memcache中找,如果找到就直接返回
4.如果找不到,就会去数据库中查找,
5.如果查找到之后,就给memcache保存一份,
6.然后返回给php/tomcat
7.php/tomcat整合好资源之后就返回给nginx
8.nginx响应给客户端
- lnmp的数据库缓存---->memcache
- Memcache缓存数据库
- lnmp的缓存
- Memcache缓存与Mongodb数据库的优势和应用
- Memcache缓存与Mongodb数据库的优势和应用
- Memcache缓存与Mongodb数据库的优势和应用
- Memcache缓存与Mongodb数据库的优势和应用
- 用YUM的方法安装 Memcache数据库缓存
- Memcache缓存与Mongodb数据库的优势和应用
- memcache的分布式缓存
- Memcache缓存的使用
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- Discuz!的Memcache缓存实现
- 使用中文维基百科进行Word2Vec实验
- UVA 11235 Frequent values(RMQ)
- 查询的数据不能映射到我的po类,只能显示查询到行数 ,数据显示的为空
- Unable to create the django_migrations table 迁移文件时报错
- Java实现验证码的生成
- lnmp的数据库缓存---->memcache
- Latex-特殊公式
- P1074 靶形数独
- Android 性能测试之方向与框架篇
- $(#id).val()在控制台可以获取到id的值,在js中却报错
- iOS可复用控件之发送动画
- Pareto最优解排序
- session监听器
- Linux 防火墙