nginx系列1 nginx作用

2021-09-19 12:40:13 字數 2006 閱讀 8463

nginx是乙個常見的http和反向**伺服器,之所以流行是它可以在支援50000個高併發連線下,系統的cpu、記憶體消耗很低,執行很穩定。

(1)路由功能

可以根據訪問的網域名稱選擇後台伺服器,比如用在微服務領域

(2)負載均衡

在高併發下,利用負載均衡選擇伺服器,降低服務端壓力,增大併發量

(3)動靜分離

充當靜態伺服器,比如html檔案,比tomcat效能高很多

(1)正向**

正向**是客戶端明確知道要訪問的是目標是誰,但無法直接訪問,所以客戶端找了個**伺服器,讓**伺服器去**訪問。比如我們常見的翻牆軟體。

正向**中,客戶端是知道自己要訪問請求是由**伺服器**的,服務端只知道請求是**伺服器發起的,不知道正在發起的是客戶端。

(2)反向**

反向**比較常見的就是負載均衡。客戶端實際上不知道自己訪問的是個**伺服器,也不知道訪問的是伺服器集群中具體的哪一台伺服器。是由nginx通過具體的演算法將請求**到一台具體的伺服器,比如輪詢。

nginx安裝完成後,主要有4個目錄

配置檔案結構

#user  nobody;  #主模組命令, 指定nginx的worker程序執行使用者以及使用者組,預設由nobody賬號執行。

worker_processes 1; // worker程序的數量

worker_rlimit_nofile 100000; #worker程序的最大開啟檔案數限制

#error_log logs/error.log;//用來定義全域性錯設日誌檔案的路徑和日誌名稱。

//日誌輸出級別有debug,info,notice,warn,error,crit 可供選擇,其中debug輸出日誌最為詳細,面crit(嚴重)輸出日誌最少。預設是error

#error_log logs/error.log notice;

#error_log logs/error.log info;

#pid logs/nginx.pid;//用來指定程序id的儲存檔案位置。

events //事件區塊結束

http //第乙個location區塊結果

error_page 500502503504 /50x.html; // 出現對應的http狀態碼時,使用50x.html回應客戶

日誌切割:

#編寫logcut/sh:

#!/bin/bash

#設定日誌檔案存放目錄

log_home="/usr/local/nginx/logs/"

#備分檔名稱

log_path_bak="$(date -d yesterday +%y%m%d%h%m)"

#重新命名日誌檔案

mv $/access.log $/access.$.log

mv $/error.log $/error.$.log

#向nginx主程序發訊號重新開啟日誌

kill -usr1 `cat $/nginx.pid`

定時任務

配置linux的cron,crontab檔案格式:minute hour day month week command

比如:*/1 * * * * /usr/local/nginx/sbin/logcut.sh

開啟定時任務:

/etc/rc.d/init.d/crond start #定時任務開啟

注意/etc/init.d/rsyslog start #系統日誌,如不開啟,看不到定時任務日誌

Nginx筆記1 Nginx簡介

nginx是俄羅斯人編寫的十分輕量級的http伺服器,nginx,它的發音為 engine x 是乙個高效能的http和反向 伺服器,同時也是乙個imap pop3 smtp 伺服器。nginx以事件驅動的方式編寫,所以有非常好的效能,同時也是乙個非常高效的反向 負載平衡。nginx做為http伺服...

nginx 學習筆記 1 nginx安裝

1.nginx安裝 根據作業系統的不同,nginx的安裝方式也不相同。1.1 對linux系統來說,nginx.org提供了nginx安裝包。目前,ngnix提供了如下版本的作業系統的安裝包 rhel centos version 5.x6.x debian version codename 6.x...

1 Nginx簡介及安裝

nginx engine x 是乙個高效能的http和反向 伺服器,特點是占有記憶體少,併發能力強,事實上nginx的併發能力確實在同型別的網頁伺服器中表現較好 nginx專為效能優化而開發,效能是其最重要的考量,實現上非常注重效率,能經受高負載的考驗,有報告表明能支援高達50000個併發連線數。a...