redis模块介绍

redis2-nginx-module 可以实现 Nginx 以非阻塞方式直接防问远方的 Redis 服务,可以启用强大的 Redis 连接池功能,进而实现更多的连接与更快速的访问。

安装部署

安装前环境:php+nginx 见 https://www.cnblogs.com/huandada/p/10114722.html

注:nginx的redis模块加载是不需要用到php的,这里只需要nginx编译安装。

编译安装redis

https://www.cnblogs.com/huandada/p/10192215.html

nginx安装redis模块

下载模块

cd ~
git clone https://github.com/openresty/redis2-nginx-module.git

将模块放到nginx的安装目录对应的module下,如果没有,可以直接创建

sudo mkdir /usr/local/nginx/module/
sudo cp -R ~/redis2-nginx-module/ /usr/local/nginx/module/

nginx的二次编译

查看nginx的版本信息

cd /usr/local/nginx/sbin/
sudo ./nginx -V

进入到nginx源码包的解压目录,编译安装

cd ~/nginx-1.4.2
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --user=nginx --group=nginx --with-http_ssl_module --add-module=/usr/local/nginx/module/redis2-nginx-module
sudo make
可以看到模块编译成功

sudo make install

重启服务

sudo killall nginx
cd /usr/local/nginx/sbin/
sudo ./nginx

再次查看nginx的版本信息

sudo ./nginx -V



模块安装成功

页面测试

在redis set一个键值key为hello value为world

添加nginx配置,获取该值

sudo vim /usr/local/nginx/conf/nginx.conf
location = /redis{
default_type text/plain;
redis2_query get "hello";
redis2_pass 127.0.0.1:6379;
}

访问 http://ip:80/redis

php的redis模块扩展

在redis服务安装的基础上,可以不用nginx模块,php的redis模块也可以实现相同的效果

下载模块编译安装

cd ~
wget https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz
tar -zxvf 3.1.2.tar.gz
cd phpredis-3.1.2
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
sudo make
sudo make install #得到模块放置路径
/xx/xx/xx/

将模块信息添加至 php.ini

sudo vim /usr/local/php/etc/php.ini #添加以下行
extension=/xx/xx/xx/redis.so

重启php-fpm服务

sudo killall php-fpm
cd /usr/local/php/sbin/
./php-fpm

phpinfo()页面查看模块加载情况

cat /usr/local/nginx/html/info.php
<?php phpinfo() ?>

访问页面 http://ip:80/info.php

nginx/php的redis模块扩展的更多相关文章

  1. redis和redis php扩展安装(转)

    redis是一个内存数据库,比memcache支持更丰富的value类型,新浪微博就使用redis来做缓存. redis的源码安装 wget http://download.redis.io/redi ...

  2. Nginx一致性哈希模块的Lua实现

    Nginx一致性哈希模块的Lua重新实现 技术背景: 最近在工作中使用了nginx+redis 的架构,redis在后台做分布式存储,每个redis都存放不同的数据,这些数据都是某门户网站通过Hado ...

  3. php的imagick模块扩展

    imagick模块介绍       ImageMagick是一个用于查看.编辑位图文件以及进行图像格式转换的开放源代码软件套装.它可以读取.编辑超过100种图象格式,可用来替换GD库. 安装 在加载模 ...

  4. php的Memcached模块扩展

    Memcached模块介绍       Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态. ...

  5. NGINX 加载动态模块(NGINX 1.9.11开始增加加载动态模块支持)

    NGINX 1.9.11开始增加加载动态模块支持,从此不再需要替换nginx文件即可增加第三方扩展.目前官方只有几个模块支持动态加载,第三方模块需要升级支持才可编译成模块. tinywan@tinyw ...

  6. redis php扩展及基本命令

    linux 安装php mysql redis memchache 等工具 用 OneinStack 安装步骤 注意 如果有单独数据盘,建议您先挂载数据盘,建议将网站内容.数据库放在数据盘中.如何挂载 ...

  7. Nginx加载ngx_pagespeed模块,加快网站打开的速度

    [页面加速]配置Nginx加载ngx_pagespeed模块,加快网站打开的速度   ngx_pagespeed 是一个 Nginx 的扩展模块,可以加速你的网站,减少页面加载时间,它会自动将一些提升 ...

  8. Python 连接 redis 模块

    redis 模块使用可以分类为: 连接方式 连接池 操作 String操作 Hash操作 List操作 Set操作 Sort Set操作 管道 发布订阅 (1)操作模式 redis提供两个类Redis ...

  9. inux redis 安装配置, 以及redis php扩展

    一,什么是redis redis是一个key-value存储系统. 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset ...

随机推荐

  1. centos7防火墙设置

    前言 CentOS7 与之前版本在防火墙配置上不同,防火墙从iptables变成了firewalld Centos7默认安装了firewalld,如果没有安装的话,可以使用yum命令进行安装 yum ...

  2. Shiro与CAS整合实现单点登录

    1.简介 CAS:Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法. Shiro:Apache Shiro是一个Java安全框架,可以帮助我们完成认证.授权.会话管 ...

  3. 2.6 if嵌套

    if嵌套 通过学习if的基本用法,已经知道了 当需要满足条件去做事情的这种情况需要使用if 当满足条件时做事情A,不满足条件做事情B的这种情况使用if-else 想一想: 坐火车或者地铁的实际情况是: ...

  4. ajax向Django前后端提交请求和CSRF跨站请求伪造

    1.ajax登录示例 urls.py from django.conf.urls import url from django.contrib import admin from app01 impo ...

  5. ps常用指令集

    M DCtrl+ D清空选择区域Ctrl+ R调出标尺

  6. safari中input、textarea无法输入的问题

    网址:https://www.cnblogs.com/xiayu25/p/6832748.html * { -webkit-box-sizing: border-box; -moz-box-sizin ...

  7. 常用window命令

    1.  关闭端口占用程序 先查看端口(8080)占用程序 netstat -ano | findstr 显示结果如下 TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 1066 ...

  8. 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN

    object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别.object detection要解决的问题就是物体在哪里,是什么这整个流程的问题.然而,这个问题 ...

  9. unity 使用方法

    1.Rotaion 想要设定一个实例的rotation的时候不能使用Vector3来直接设定:应改为 rotation = Quaternion.Euler (0.0f, 180.0f, 0.0f); ...

  10. java学习 之 操作符

    操作符介绍 java语言操作符 1.赋值操作符  = 2.计算操作符   + .- (减.负号).*(乘)./(除) 3.递增递减     --(递减).++(递增) 4.关系操作符    ==.!= ...