欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎么實現(xiàn)nginx的原理分析

本篇文章為大家展示了怎么實現(xiàn)nginx的原理分析,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

清遠(yuǎn)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

1. 了解一下在nginx使用中常見的信號處理

kill -SIGHUP $ngx_master_pid # 相當(dāng)于nginx -s reload 從新啟動新的work進(jìn)程kill -SIGTERM $ngx_work_pid # 重建指定nginx work進(jìn)程ID的進(jìn)程

對于nginx的master進(jìn)程來說可以接收到的信號:

以下四個信號是可以通過nginx命令與參數(shù)實現(xiàn)的

  • TERM,INT 表示立刻停止nginx進(jìn)程

  • QUIT 表示優(yōu)雅的停止nginx進(jìn)程,就是慢慢的停止nginx進(jìn)程,不要對用戶發(fā)送立刻結(jié)束連接,像tcp的reset復(fù)位請求這樣的報文

  • HUP 表示重載配置文件

  • USR1表示重新打開日志文件

以下兩個信號專門用于進(jìn)行nginx的熱部署的時候使用,但是只能通過linux命令行的kill實現(xiàn)

  • USR2 發(fā)送熱更新信號

  • WINCH 用于通知下線舊的work進(jìn)程

當(dāng)我們在命令行中使用nginx與參數(shù)實現(xiàn)對nginx的管理時,實質(zhì)上就是獲取當(dāng)前nginx運行的pid文件中的pid,然后通過命令行向pid發(fā)送對應(yīng)的信號

  • reload -> HUP

  • Reopen -> USR1

  • stop -> TERM

  • Quit -> QUIT

 

2. nginx在重載配置文件究竟做了什么?

思考優(yōu)雅的退出和立即退出有什么區(qū)別呢?你知道嗎?

1. 向master進(jìn)程發(fā)送HUP信號(reload命令)2. master進(jìn)程校驗配置語法是否正確(因此我們在進(jìn)行reload的時候,不一定非要先執(zhí)行一個`nginx -t`)3. master進(jìn)程打開新的監(jiān)聽端口(可能引入了https,監(jiān)聽了443,此時work就會共用打開的端口)4. master進(jìn)程用新配置啟動新的worker子進(jìn)程5. master進(jìn)程向老的worker子進(jìn)程發(fā)送Quit信號(在新的版本中nginx添加一個nginx shutdown timeout,這個就是在新老worker子進(jìn)程同時存在的時候,限制老的worker進(jìn)程最遲多久退出)6. 老worker進(jìn)程關(guān)閉監(jiān)聽句柄,處理完當(dāng)前連接后結(jié)束進(jìn)程

怎么實現(xiàn)nginx的原理分析

3. nginx熱升級的完整流程是什么樣的?

  • 新的worker進(jìn)程升級出現(xiàn)問題,想要考慮回滾?

  • 老的worker進(jìn)程一直退不掉?

  • 升級了nginx之后,發(fā)現(xiàn)很多預(yù)期的功能不能使用,配置報錯?

當(dāng)我們在處理nginx的版本升級或者增加新的擴(kuò)展模塊的時候或多或少的會遇到這些問題,熟悉nginx升級原理很快解決這些問題。

1. 將舊nginx文件換成新的nginx文件(注意備份) 2. 向master進(jìn)程發(fā)送USR2信號3. master進(jìn)程修改pid文件名,加后綴.oldbin4. master進(jìn)程用新nginx文件啟動新master進(jìn)程5. 向老master進(jìn)程發(fā)送quit信號,關(guān)閉老的master進(jìn)程6. 回滾: 向老master發(fā)送HUP,向新master發(fā)送quit

怎么實現(xiàn)nginx的原理分析

4. 如何優(yōu)雅的關(guān)閉nignx的worker進(jìn)程?

如何優(yōu)雅的關(guān)閉連接呢?worker進(jìn)程可以識別當(dāng)前的進(jìn)程是否正在處理請求,若沒有處理請求的時候,就可以將連接進(jìn)行關(guān)閉,但是當(dāng)nginx代理websocket的協(xié)議的時候,是做不到這點的,因為在websocket后端通信的frame幀里面,nginx是不解析的,所以是不能識別的。當(dāng)nignx代理的是tcp請求的時候,因為無法判斷一個請求要經(jīng)歷多少報文才結(jié)束,因此也是不能識別進(jìn)程是否正在處理請求,但是對于Http請求,nginx是可以的。

1. 設(shè)置定時器 `worker_shutdown_timeout`,然后給進(jìn)程設(shè)置一個優(yōu)雅關(guān)閉的標(biāo)志位2. 關(guān)閉監(jiān)聽句柄不在接收新的連接3. 關(guān)閉空閑連接4. 在循環(huán)中等待全部連接關(guān)閉5. 退出進(jìn)程

上述內(nèi)容就是怎么實現(xiàn)nginx的原理分析,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章題目:怎么實現(xiàn)nginx的原理分析
網(wǎng)頁網(wǎng)址:http://aaarwkj.com/article48/gjodhp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、建站公司云服務(wù)器、定制網(wǎng)站、虛擬主機(jī)、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
av天堂网站在线观看| 丝袜美腿一区在线播放| 天堂av在线播放观看| 青青草成人一区二区三区| av真人青青小草一区二区欧美| 日韩不伦高清一区二区三区| 欧美精品中出一区二区三区| 国产精品亚洲二区三区三州| 国产专区亚洲精品欧美| 欧美国产一级二级三级| 少妇一夜一次一区二区| 色吊最新在线视频免费观看| 一区二区高清免费日本| 中文人妻熟妇乱又伦精品| 蜜臀av网站在线播放| 亚洲欧美日韩香蕉在线观看| 精品一区二区三区推荐| 日韩人妻有码中文字幕| 免费在线观看成人av| 国产精品大片久久激情四射| 午夜精品久久99蜜桃| 国产成人精品一区二区国产乱码| 丰满少妇被激烈的插进去| 国产成人综合亚洲一区| 蜜臀av网站在线播放| 国产在线成年人免费观看| 日韩精品在线第一视频| 婷婷国产综合一区二区三区| 在线观看91精品国产秒播| 福利在线视频一区二区| 少妇高潮一区二区三区在线| 亭亭丁香激情五月涩久久| 97在线亚洲欧美视频| 日韩中文字幕亚洲精品一| 欧美激情在线精品一区二区| 国产高清学生三级一区二区| 国产精品国产精品三级在线观看| 日韩不卡一区二区在线观看| 不卡一区二区国产精品| 日韩久久精品五月综合| 欧美日韩中文字幕精品视频|