redis_lua_nginx环境配置过程
redis仅作为第三方组件,工作中配合高效的lua_nginx模式,在很大限度上利用redis作为缓存和队列的优点;
以下是自己配置过程总的概括性步骤,不是很详细;
[Nginx_lua_redis环境] 第一步: LuaJIT 安装 # wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz 新建/etc/ld.so.conf.d/usr_local_lib.conf文件指定lib库 /usr/local/lib; 执行ldconfig命令,重建conf缓存; 这里需要配置下LuaJIT的调用环境, #make install 之后,Luajit 的include文件默认在/usr/local/include/Luajit-2.0下 这个时候网上一般是推荐export LUAJIT_INC=/usr/local/include/Luajit-2.0再ldconfig, 但实际上很多还是无效,在编译其它依赖luajit的文件时提示找不到lua.h和lauxlib.h文件, 那么就需要下面这么做: #cd /usr/local/include/Luajit-2.0 #cp * ../ 这里把Luajit-2.0下的所有.h文件放到/usr/local/include目录下,这样gcc/++就会自动 寻找到该位置. 第二步: 下载套件 nginx-lua和nginx-http-redis 模块(淘宝团队实现的): # git clone https://github.com/chaoslawful/lua-nginx-module.git # git clone https://github.com/agentzh/redis2-nginx-module.git 以上两文件以备nginx模块编译配置; nginx配置: # ./configure --prefix=/usr/local/nginx \ --add-module=../lua-nginx-module \ --add-module=../redis2-nginx-module \ lua-redis 模块(淘宝团队实现的): #git clone https://github.com/agentzh/lua-resty-redis.git 把/lib目录下的redis.lua文件拷贝到ngingx/conf目录下; 该文件指定lua操作redis的一套方法,区别于上面的nginx-http-redis模块; 以上环境配置完就可以在nginx服务上, 通过lua脚本调用redis库进行数据操作了. 以上还需要cjson库来完成操作. [lua_redis环境] 以下是lua和redis相关的调用库: 1.lua-redis-parser 库(lua库): # git clone https://github.com/agentzh/lua-redis-parser.git # make CC=gcc # make install CC=gcc 2.redis-lua 库 # git clone https://github.com/nrk/redis-lua.git # cp redis-lua/src/redis.lua /usr/share/lua/5.1 3.json-lua 库 # wget http://files.luaforge.net/releases/json/json/0.9.50/json4lua-0.9.50.zip # unzip json4lua-0.9.50.zip # cp json4lua-0.9.50/json/json.lua /usr/share/lua/5.1/
实际安装过程中可以此为蓝本对照不同Linux配置环境做改动;