由於我們的產品經常是由多個部門合作開發的,常常會用到其他部門提供的http數據接口。比如我們可能在一個產品中接入論壇部門的功能、接入SNS部門的功能、或者接入搜索部門的功能等等。這種情況下,我們會頻繁請求其他部門的接口。如果通過域名的方式來訪問這些接口的話,會因為DNS解析造成一些性能上的浪費。
先來看看DNS解析的流程:
可見,在沒有本地緩存的情況下,這個過程是比較繁瑣的。由於這些接口都是在公司內部服務器之間調用,我們是可以知道接口對應的IP地址的,因此,完全可以通過指定IP來避免域名解析的過程。實現起來也很簡單,只要在/etc/hosts中指定IP即可,比如針對上面這個圖片內容,可以這樣配置:
1.1.1.1 163.com
就這樣一個小小的改動,就能帶來不少改善。