臨時(shí)抱佛腳必備:Nginx必懂的八道面試題_第1頁
臨時(shí)抱佛腳必備:Nginx必懂的八道面試題_第2頁
臨時(shí)抱佛腳必備:Nginx必懂的八道面試題_第3頁
臨時(shí)抱佛腳必備:Nginx必懂的八道面試題_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

臨時(shí)抱佛腳必備:Nginx必懂的八道面試題

Nginx的并發(fā)力量在同類型網(wǎng)頁服務(wù)器中的表現(xiàn),相對(duì)而言是比較好的,因此受到了許多企業(yè)的青睞,我國使用Nginx網(wǎng)站的知名用戶包括騰訊、淘寶、百度、京東、新浪、網(wǎng)易等等。Nginx是網(wǎng)頁服務(wù)器運(yùn)維人員必備技能之一,下面為大家整理了一些比較常見的Nginx相關(guān)面試題,僅供參考:

1、nginx常用命令

啟動(dòng)nginx./sbin/nginx

停止nginx./sbin/nginx-sstop./sbin/nginx-squit

重載配置./sbin/nginx-sreload(平滑重啟)servicenginxreload

重載指定配置文件./sbin/nginx-c/usr/local/nginx/conf/nginx.conf

查看nginx版本./sbin/nginx-v

檢查配置文件是否正確./sbin/nginx-t

顯示關(guān)心信息./sbin/nginx-h

2、nginx狀態(tài)碼

499:服務(wù)端處理時(shí)間過長,客戶端主動(dòng)關(guān)閉了連接。

3、nginx是如何實(shí)現(xiàn)高并發(fā)的

一個(gè)主進(jìn)程,多個(gè)工作進(jìn)程,每個(gè)工作進(jìn)程可以處理多個(gè)懇求

每進(jìn)來一個(gè)request,會(huì)有一個(gè)worker進(jìn)程去處理。但不是全程的處理,處理到可能發(fā)生堵塞的地方,比如向上游(后端)服務(wù)器轉(zhuǎn)發(fā)request,并等待懇求返回。那么,這個(gè)處理的worker連續(xù)處理其他懇求,而一旦上游服務(wù)器返回了,就會(huì)觸發(fā)這個(gè)大事,worker才會(huì)來接手,這個(gè)request才會(huì)接著往下走。

由于webserver的工作性質(zhì)打算了每個(gè)request的大部份生命都是在網(wǎng)絡(luò)傳輸中,實(shí)際上花費(fèi)在server機(jī)器上的時(shí)間片不多。這是幾個(gè)進(jìn)程就解決高并發(fā)的隱秘所在。即@skoo所說的webserver剛好屬于網(wǎng)絡(luò)io密集型應(yīng)用,不算是計(jì)算密集型。

4、nginx功能

作為httpserver(代替apache,對(duì)PHP需要FastCGI處理器支持)

反向代理服務(wù)器

實(shí)現(xiàn)負(fù)載均衡

虛擬主機(jī)

FastCGI:Nginx本身不支持PHP等語言,但是它可以通過FastCGI來將懇求扔給某些語言或框架處理

5、502錯(cuò)誤可能緣由

(1).FastCGI進(jìn)程是否已經(jīng)啟動(dòng)

(2).FastCGIworker進(jìn)程數(shù)是否不夠

(3).FastCGI執(zhí)行時(shí)間過長

fastcgi_connect_timeout300;

fastcgi_send_timeout300;

fastcgi_read_timeout300;

(4).FastCGIBuffer不夠

nginx和apache一樣,有前端緩沖限制,可以調(diào)整緩沖參數(shù)

fastcgi_buffer_size32k;

fastcgi_buffers832k;

(5).ProxyBuffer不夠

假如你用了Proxying,調(diào)整

proxy_buffer_size16k;

proxy_buffers416k;

(6).php腳本執(zhí)行時(shí)間過長

將php-fpm.conf的valuename=request_terminate_timeout0s/value的0s改成一個(gè)時(shí)間

6、nignx配置

(1)全局塊:配置影響nginx全局的指令。一般有運(yùn)行nginx服務(wù)器的用戶組,nginx進(jìn)程pid存放路徑,日志存放路徑,配置文件引入,允許生成workerprocess數(shù)等。

(2)events塊:配置影響nginx服務(wù)器或與用戶的網(wǎng)絡(luò)連接。有每個(gè)進(jìn)程的最大連接數(shù),選取哪種大事驅(qū)動(dòng)模型處理連接懇求,是否允許同時(shí)接受多個(gè)網(wǎng)路連接,開啟多個(gè)網(wǎng)絡(luò)連接序列化等。

(3)http塊:可以嵌套多個(gè)server,配置代理,緩存,日志定義等絕大多數(shù)功能和第三方模塊的配置。如文件引入,mime-type定義,日志自定義,是否使用sendfile傳輸文件,連接超時(shí)時(shí)間,單連接懇求數(shù)等。

(4)server塊:配置虛擬主機(jī)的相關(guān)參數(shù),一個(gè)http中可以有多個(gè)server。

(5)location塊:配置懇求的路由,以及各種頁面的處理狀況。

7、nginx和apache的區(qū)分

(1)輕量級(jí),同樣起web服務(wù),比apache占用更少的內(nèi)存及資源

(2)抗并發(fā),nginx處理懇求是異步非堵塞的,而apache則是堵塞型的,在高并發(fā)下nginx能保持低資源低消耗高性能

(3)高度模塊化的設(shè)計(jì),編寫模塊相對(duì)簡潔

(4)最核心的區(qū)分在于apache是同步多進(jìn)程模型,一個(gè)連接對(duì)應(yīng)一個(gè)進(jìn)程;nginx是異步的,多個(gè)連接(萬級(jí)別)可以對(duì)應(yīng)一個(gè)進(jìn)程

8、fastcgi與cgi的區(qū)分

Cgi:web服務(wù)器會(huì)依據(jù)懇求的內(nèi)容,然后會(huì)fork一個(gè)新進(jìn)程來運(yùn)行外部c程序(或perl腳本...),這個(gè)進(jìn)程會(huì)把處理完的數(shù)據(jù)返回給web服務(wù)器,最終web服務(wù)器把內(nèi)容發(fā)送給用戶,剛才fork的進(jìn)程也隨之退出。假如下次用戶還懇求改動(dòng)態(tài)腳本,那么web服務(wù)器又再次fork一個(gè)新進(jìn)程,周而復(fù)始的進(jìn)行。

Fastcgi:web服務(wù)器收到一個(gè)懇求時(shí),他不會(huì)重新fork一個(gè)進(jìn)程(由于這個(gè)進(jìn)程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論