天天看點

每個軟體都自己把作業系統的host配置項加到記憶體中供頻繁調用

nginx的轉發,http_pass 轉發到一個域名passport.ab.cn

那具體是到哪台機器上。

其實可以通過/etc/hosts檔案來配置的。

可以了解,這個hosts檔案是作業系統級别的,所有在這個作業系統上的軟體都繞不過它。

應該是作業系統提供了一個作業系統的函數,供作業系統上的軟體來調用。具體細節應該是c語言方面了。不是很清楚。

之前遇到一個問題,明明讓運維設定轉發到133機器上。結果看到的通路還是181機器上的版本。這就奇怪了。其實要重新開機nginx才行。

每個軟體都會自己維護host,緩存在記憶體中。這也就明白了,為什麼修改了window下的host配置,浏覽器要重新開機,才能使用到新的配置,不然會用到以前的配置。

可以把這浏覽器與ngingx看作是同類型軟體,會緩存host項在記憶體中。

目的很明顯,就是為了提高性能。以避免每次都需要去讀取磁盤,磁盤存在i/0瓶頸。一次加載到記憶體中,自己維護(這是很多系統的一個設計思想,比如資料庫系統也是這樣子,定期把資料刷到磁盤上持久化)。除非我自己的程序消失掉了,資料就消失掉了。

以後記得,讓nignx做轉發,如果修改了host檔案,要讓nginx重新開機為好。reload是否可以呢?

繼續閱讀