1. 程式人生 > >8、nginx和tengine簡介

8、nginx和tengine簡介

練習:

(1) root為同一路徑;

(2) root為不同的路徑;

location \.php$ {

root /web/app/wp;

}

location / {

root /web/htdocs;

}

如何解決問題?

(3) fpm server為另一主機;

location \.php$ {

fastcgi_pass fastcgi://172.16.100.9:9000;

}

location / {

root /web/htdocs;

}

總結:

cache:

proxy_cache

fastcgi_cache

練習:

使用nginx反向代理(rr排程)使用者請求至兩個以上的後端LAMP(按標準路徑部署的有pma);

(1) 手動更新所有節點上的pma至新版本;

(2) 寫指令碼實現如上過程;

回顧:nginx upstream, fastcgi

upstream name {

server

server

}

wrr

ip_hash|least_conn|sticky

fastcgi_pass fastcgi://

LNMMP: Memcached

HAProxy:

web arch: haproxy

mode: http, tcp (https, mysql)

HAProxy:

代理(http): 掮客(broker)

正向代理

反向代理:

代理作用:web快取(加速)、反向代理、內容路由(根據流量及內容型別等將請求轉發至特定伺服器)、轉碼器;

在代理伺服器上新增Via首部;

快取的作用:

減少冗餘內容傳輸;

節省頻寬、緩解網路瓶頸;

降低了對原始伺服器的請求壓力;

降低了傳輸延遲;

HAProxy: 只是http協議的反向代理,不提供快取功能;但額外支援對tcp層對基於tcp通訊的應用做LB;

nginx:

server {

}

server {

location ~* \.php$ {

proxy_pass

}

location / {

}

}

upstream {

leastconn

server

server

}

upstream {

}

haproxy:

frontend

use_backend

default_backend

backend

balancer

server

server

listen:

server

default

配置檔案:haproxy.cfg

全域性配置

代理配置

回顧:

HAProxy:

http協議反向代理

tcp層的LB

特性:event-driven, ebtree

配置:/etc/haproxy/haproxy.cfg

/usr/sbin/haproxy

CentOS 6: /etc/rc.d/init.d/haproxy

CentOS 7: haproxy.service

配置分為兩段:

global

配置引數:log, maxconn, ...

proxies

defaults, frontend, backend, listen

示例:

frontend main *:80

default_backend websrvs

backend websrvs

balance roundrobin

server web1 172.16.100.68 check 

server web2 172.16.100.69 check

 

 

 

 

 

 

nihoa