lamp架构之通过php(memcache+openresty)构建nginx高速缓存

在开始之前我们先要了解nginx的缓存原理:

缓存技术的基本思想: 对用户已经访问过的内容在Nginx建立副本,如果在一段时间内(缓存尚未过期)再次访问该数据,则不需要重新发起请求获取数据,可以直接从缓存中读取到该数据。
缓存的好处在于减少了Nginx与后端服务之间的网络交互,减轻了网络的压力,在减少数据传输的延迟时同时可以提升用户访问速度。
而且如果后端服务出现异常时,还可以通过缓存进行相应用户请求,提高了后端服务的稳定性。
什么是Nginx缓存?
Nginx基于Proxy Store实现,使用Nginx的http_proxy模块可以实现类似于squid的缓存功能。
当启用缓存时,Nginx会将相应数据保存在磁盘缓存中,只要缓存数据尚未过期,就会使用缓存数据来响应客户端的请求。

如何启用缓存?

Nginx启用缓存需要在最顶层的http节点下配置proxycachepath命令。

proxy_cache_path /data/cache keys_zone=niyueling:10m;

proxycachepath命令一共包含两个参数
第一个参数指定缓存保存的本地路径
第二个参数定义缓存数据的共享内存区域的名称和内存区大小

Nginx启动后,缓存加载程序只进行加载一次,加载时会将缓存的元数据加载到共享内存区域,但是如果一次加载整个缓存全部内容可能会使Nginx刚启动的前几分钟性能消耗严重,大幅度降低Nginx的性能。

传统缓存策略:

在这里插入图片描述

高速缓存:
在这里插入图片描述

一. php添加memcache功能模块

在这里插入图片描述在.bash_profile文件添加文件路径:

在这里插入图片描述

在这里插入图片描述
测试php服务是否正常:
在这里插入图片描述
配置memcache服务:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述编译:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述连接php与memcache服务:

在这里插入图片描述在php.ini文件里配置:

在这里插入图片描述在这里插入图片描述
已经配置成功:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
配置nginx服务:

在这里插入图片描述

在这里插入图片描述访问网址:
会从缓存中取数据
在这里插入图片描述
服务配置成功!!
再次访问memcache网址:

在这里插入图片描述

在这里插入图片描述
从上图可以看到处理的信息只有75%

执行:
ab -c20 -n 1000 http://172.25.2.1/example.php
优化
在这里插入图片描述

在这里插入图片描述

再次刷新网页:

在这里插入图片描述
处理量100%

二. 基于openresty(构建高效透明的缓存机制) 访问

基于openresty(构建高效透明的缓存机制) 访问,能将缓存放在nginx中,速度更快

安装并配置openrestry
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
需要切换,关闭之前的nginx访问模式:

在这里插入图片描述配置nginx.conf文件:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

重启nginx服务:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插;入图片描述配置该文件:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

从下图可以清楚的看出传输量大幅度提升:

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值