【API管理 APIM】APIM中對后端API服務的DNS域名緩存問題


問題描述

在使用API Management來進行API管理時,當我們后端的API DNS IP地址發生改變或者是API的域名發生改變后,通過APIM請求訪問的還是是舊的域名或者IP地址,這是因APIM中對DNS的緩存導致問題。

問題分析

APIM本質也是部署在VM中的應用,對DNS的處理完全依照VM的機制,APIM本身並無特殊的緩存機制。如果DNS發生變化,其解析到新的變動取決於TTL的時間。默認情況下,TTL時間為3600,所以當后端API域名變動后,大約在60分鍾左右生效。

解決辦法

因為APIM中使用了HTTP Keep-Alive功能,所以如果APIM中持續訪問后端API,之前的訪問就會使用在修改DNS前建立的http連接,導致請求還是訪問的舊的服務。如是這樣的情況,可以通過停止舊的服務,讓HTTP Keep-alive的功能失效。這個時候請求會重新去解析DNS,得到新的信息(如IP地址),訪問就可以成功了。

 

TTL介紹鏈接:https://jaminzhang.github.io/dns/DNS-TTL-Understanding-and-Config/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM