国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

解決nginx+lua搭建文件上傳下載服務問題

2024-08-30 12:25:16
字體:
來源:轉載
供稿:網友

導語

項目需要做一個文件上傳下載服務,利用 nginx+lua 做一個代理服務,上傳入口統一,分發到不同的機器存儲,下載鏈接和物理存儲隔離,支持添加 agent 的方式擴容,這里主要講一下思路和搭建配置過程,大神勿噴。

主要邏輯

上傳

前端請求 nginx 服務, nginx 調用 upload 腳本,腳本通過查找配置,找到對應的邏輯存儲路徑和物理存儲機器的 agent 的 ip 和端口,通過 tcp 發包到對應 agent ,部署在對應機器的 agent 接受數據,并寫到本地文件。

下載

http下載請求 nginx , nginx 調用 download 腳本,腳本解析鏈接參數,根據參數找到對應的 agent 地址,請求返回文件二進制內容,腳本接受到 agent 返回的數據,返回給請求端。

配置Nginx+lua

接下來主要講一下 nginx 安裝配置(這里包括lua的二進制流處理 lpack, md5計算, mysql 操作, json 操作)

1、安裝 nginx

下載http://nginx.org/en/download.html

解壓tar -xvf nginx-1.10.3.tar.gz

2、安裝 luajit(輕量級 lua)

http://luajit.org/download.html

修改 makefile 里面的安裝路徑export PREFIX= /usr/local/luajit

然后安裝make &make install

3、安裝nginx_lua_module

下載https://github.com/openresty/lua-nginx-module

解壓

4、 安裝ngx_devel_kit (NDK提供函數和宏處理一些基本任務,減輕第三方模塊開發的代碼量)

下載https://github.com/simpl/ngx_devel_kit/

5、 安裝編譯,導入

export LUAJIT_LIB=/usr/local/luajit/lib export LUAJIT_INC=/usr/local/luajit/include/luajit-2.0 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/home/oicq/jeffzhuang/ngx_devel_kit-0.3.0 --add-module=/home/oicq/jeffzhuang/lua-nginx-module-0.10.make -j2 make install

啟動/usr/local/nginx/sbin/nginx 重啟命令` usr/local/nginx/sbin/nginx -s reload v

如果報錯找不到luajit庫ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2

測試nginx直接打開瀏覽器就可以了http:10.x.x.x:8080就可以看到歡迎界面了

6 、配置conf/nginx.conf運行 lua 腳本

增加lua庫的查找路徑lua_package_path,lua_package_cpath

7、增加mysql.lua下載 https://github.com/openresty/lua-resty-mysql 拷貝到lua_package_path 目錄下就可以了

8、增加 csjon http://www.kyne.com.au/~mark/software/download/lua-cjson-2.1.0.tar.gz

修改 Makefile 里面的 PREFIX=/usr/local/luajit就是luajit 的安裝路徑,make后將生成的 cjson.so拷貝到

lua_package_cpath目錄下

9、安裝lpack 可以用現成的 lpack.lua 拷貝到 lua_package_path 或者用 https://github.com/LuaDist/lpack 編譯生成 lpack.so拷貝到 lua_package_cpath 64位需要增加編譯命令 -fPIC

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 通辽市| 五家渠市| 宜宾县| 巧家县| 西丰县| 翁源县| 南澳县| 博乐市| 阜平县| 建阳市| 龙江县| 玉田县| 新民市| 华蓥市| 安国市| 安溪县| 西吉县| 泾源县| 永清县| 邵阳县| 阜新| 石台县| 贡嘎县| 平顺县| 襄樊市| 名山县| 南丹县| 大关县| 上蔡县| 高青县| 嘉兴市| 本溪市| 益阳市| 巴彦县| 延庆县| 安岳县| 夏津县| 宁陵县| 渝北区| 渝北区| 上栗县|