OpenResty(nginx)操做mysql的初步應用

OpenResty (也稱爲 ngx_openresty)是一個全功能的 Web 應用服務器,它打包了標準的 Nginx 核心,不少的經常使用的第三方模塊,以及它們的大多數依賴項。
 
OpenResty 經過匯聚各類設計精良的 Nginx 模塊,從而將 Nginx 有效的變成一個強大的 Web 應用服務器,這樣, Web 開發人員能夠使用 Lua 腳本語言調動 Nginx 支持的各類C以及Lua 模塊,快速構造出足以勝任 10K+ 併發鏈接響應的超高性能Web 應用系統.
 
OpenResty 的目標是讓你的Web服務直接跑在 Nginx 服務內部,充分利用 Nginx 的非阻塞 I/O 模型,不單單對 HTTP 客戶端請求,甚至於對遠程後端諸如MySQL,PostgreSQL,~Memcaches 以及 ~Redis 等都進行一致的高性能響應.
 
OpenResty 英文官網:http://openresty.org/
OpenResty 中文官網:http://openresty.org/cn/
Nginx 維基官網:http://wiki.nginx.org/
 
說明:
OpenResty的安裝比較簡單,這裏要使用一個強大的功能,就是用nginx直接訪問mysql,取出數據,返回給 瀏覽器,有兩種方法,第一種:使用 HttpDrizzleModule 模塊,同時還須要安裝 libdrizzle 1.0(在drizzle裏),第二種:使用ngx_lua模塊和lua庫lua-resty-mysql(Mysql client Driver)。默認安裝OpenResty時,還有一些lua庫被安裝,如
 
不管使用何種方法,都須要安裝 pcre 庫 libpcre,這是安裝nginx必須的
 
yum install pcre-devel.x86_64

方法一html

一、安裝 libdrizzle 1.0mysql

[root@lhj ~]# wget http://agentzh.org/misc/nginx/drizzle7-2011.07.21.tar.gz
[root@lhj ~]# tar zxvf drizzle7-2011.07.21.tar.gz
[root@lhj ~]# cd drizzle7-2011.07.21
[root@lhj drizzle7-2011.07.21]# ./configure --without-server
[root@lhj drizzle7-2011.07.21]# make libdrizzle-1.0
[root@lhj drizzle7-2011.07.21]# make install-libdrizzle-1.0

二、安裝 OpenRestynginx

[root@lhj ngx_openresty-1.2.4.14]# ./configure --prefix=/usr/local/openresty --with-luajit --with-http_drizzle_module --with-libdrizzle=/usr/local
[root@lhj ngx_openresty-1.2.4.14]# gmake
[root@lhj ngx_openresty-1.2.4.14]# gmake install

編輯 nginx.conf 配置文件sql

http {
    upstream mysql {
          drizzle_server 127.0.0.1:3306 dbname=test user=root password=root protocol=mysql;
    }
    server {
          location = /mysql-status {
               drizzle_status;
          }
          location / {
               drizzle_pass mysql;
               drizzle_query "select id,username,age from users where id=1";
               rds_json on;
         }
    }

}             

 紅色的配置用到了 HttpDrizzleModule 和 rds-json-nginx-module 模塊,前一個模塊是用來和數據庫交互的,後面那個是作數據格式轉換的,這裏使用的是 json 數據格式數據庫

相關文章
相關標籤/搜索