Nginx動靜分離和高可靠
阿新 • • 發佈:2020-08-04
nginx實現動靜分離
1.動態資料(每個頁面的資料根據不同的條件從資料庫查詢出來的),靜態資料(每個頁面長期不變的資料,例如,js,css,image)
先在專案搭建好測試的資料(即兩個測試的jar包 ,不同的頁面以作測試)
2.主要程式碼
server { listen 8080; server_name 118.190.158.17; location / { proxy_pass http://localhost:7000; } location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ { root /home/web; } //圖片的過濾 }
3.效果(會隨著動態資料的改變隨著改變)
keepalived實現nginx高可靠
1.Keepalived的作用是檢測伺服器的狀態,如果有一臺web伺服器宕機,或工作出現故障,Keepalived將檢測到,並將有故障的伺服器從系統中剔除,同時使用其他伺服器代替該伺服器的工作,當伺服器工作正常後Keepalived自動將伺服器加入到伺服器群中,這些工作全部自動完成,不需要人工干涉,需要人工做的只是修復故障的伺服器。類似軟體還有(heartbeat,vcs,haproxy).實現程式的自動failover,故障轉移。
2.修改192.168.153.202的配置檔案/etc/keepalived/keepalived.conf 記得修改完後重啟配置檔案 systemctl status keepalived.service
全選(高亮顯示):按esc後,然後ggvG或者ggVG
全部複製:按esc後,然後ggyG
全部刪除:按esc後,然後dG
global_defs { notification_email { #指定keepalived在發生切換時需要傳送email到的物件,可以有多個 test@163.com } notification_email_from keepalived@localhost #指定發件人 smtp_server 127.0.0.1 #指定smtp伺服器地址 smtp_connect_timeout 30 #指定smtp連線超時時間 router_id LVS_MASTER #執行keepalived機器的一個標識,同網段內唯一,建議使用主機名 主機名建議設定不一樣} #vrrp_script chk_nginx { #script "/usr/local/src/check_nginx_pid.sh" #interval 2 #weight 2 #} vrrp_instance VI_1 { #指定哪個為master,哪個為backup,如果設定了nopreempt這個值不起作用,主備靠priority決 定 #state MASTER state BACKUP nopreempt #非搶佔模式 interface ens33 virtual_router_id 51 #叢集標記,同一個叢集必須相同 priority 100 #優先順序,高優先順序競選為master,1-255 //從機要比主機優先順序低 , 才可以進行搶佔 advert_int 1#檢查間隔,預設1秒 authentication {#心跳間設定認證 auth_type PASS #認證方式 auth_pass 1111 #認證密碼 } #track_script { #chk_nginx #} virtual_ipaddress { 192.168.11.222 #虛擬ip //虛擬ping通的ip 設定一樣 } }
3.