一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - Nginx - Nginx+Lua+Redis構建高并發Web應用

Nginx+Lua+Redis構建高并發Web應用

2019-10-15 11:45Nginx技術網 Nginx

使用Nginx+Lua+Redis來構建高并發Web應用,Curl請求Nginx,Nginx通過Lua查詢Redis,返回json數據。

本文介紹如何用Nginx+Lua+Redis來構建高并發Web應用,Curl請求Nginx,Nginx通過Lua查詢Redis,返回json數據。

一、安裝
1、安裝lua-redis-parser

復制代碼代碼如下:

#git clone https://github.com/agentzh/lua-redis-parser.git
 #export LUA_INCLUDE_DIR=/usr/include/lua5.1
 #make CC=gcc
 #make install CC=gcc


2、安裝json

復制代碼代碼如下:

#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/


3、安裝redis-lua

復制代碼代碼如下:

#git clone https://github.com/nrk/redis-lua.git
 #cp redis-lua/src/redis.lua /usr/share/lua/5.1/

 

二、配置

復制代碼代碼如下:


        #vi /etc/nginx/nginx.conf
        http {
            include mime.types;
            default_type application/octet-stream;
            access_log logs/access.log;
            sendfile on;
            tcp_nopush on;
            tcp_nodelay on;
            keepalive_timeout 60;
            types_hash_max_size 2048;
            server_tokens off;
            lua_code_cache on;

 

            upstream redis_pool {
                server 192.168.1.105:6379;
                keepalive 1024 single; 
                //定義連接池大小,當連接數達到此數后,后續的連接為短連接
            }

            server {
                listen 80;
                server_name 192.168.1.104;

                location /get_redis{
                    #internal;
                    set_unescape_uri $key $arg_key;
                    redis2_query hgetall $key;
                    redis2_pass redis_pool;
                }

                location /json {
                    content_by_lua_file conf/test_redis.lua;
                }
            }
        }

 

三、測試
1、編寫腳本
        編寫上面配置中的test_redis.lua腳本

復制代碼代碼如下:

        #vi test_redis.lua
        local json = require("json")
        local parser = require("redis.parser")
        local res = ngx.location.capture("/get_redis",{args = { key = ngx.var.arg_key }})
        if res.status == 200 then
            reply = parser.parse_reply(res.body)
            value = json.encode(reply)
            ngx.say(value)
            a = json.decode(value)
            ngx.say(a[2])
        end


2、構造數據

復制代碼代碼如下:

        #redis-cli -h 192.168.1.105 -p 6379
        redis 192.168.1.105:6379>HMSET testnlr www www.ythuaji.com.cn bbs bbs.zzvips.com


3、開始測試

復制代碼代碼如下:

        #curl 'http://192.168.1.104/json?key=testnlr'
        ["www", "www.ythuaji.com.cn", "bbs", "bbs.zzvips.com"]

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品视频在线免费播放 | 4444kk在线看片 | 91久久青青草原线免费 | 欧美涩区 | 精品无码一区在线观看 | 全彩调教侵犯h本子全彩妖气he | 青草精品| 青青精品 | 天天夜夜啦啦啦 | 午夜精品久久久久久久99 | 女色在线观看免费视频 | 青春娱乐国产分类精品二 | 国产精品igao视频网网址 | 国产精品主播在线 | 国产亚洲精品九九久在线观看 | 丝袜足控免费网站xx动漫漫画 | 欧美精品一区二区三区免费观看 | 国产成人刺激视频在线观看 | 亚洲冬月枫中文字幕在线看 | 亚洲九九九| japanesexxxx日本妞 | 成人软件18免费 | 91精品国产人成网站 | 波多野结衣一区免费作品 | 日本 在线观看 | 久久中文字幕综合不卡一二区 | 香蕉国产精品偷在线播放 | 好大好硬快点好爽公 | 色老板视频 | 免看一级一片一在线看 | 亚洲社区在线观看 | 亚洲国产精品嫩草影院久久 | kkkk4444在线看片 | 男人日女人的逼视频 | 亚洲第一男人网站 | 久久午夜一区二区 | 深夜国产在线 | 国产免费视频 | 国产精品福利在线观看秒播 | 狠狠色综合久久久久尤物 | 操bb|