每个软件都自己把操作系统的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是否可以呢?

上一篇:15 项关键提示让您的软件远离 Bug 干扰


下一篇:阿里云新品发布会周刊第40期 丨 为湖北黄冈中学搭建直播课堂,我们只用了1天!