我对DNS缓存感到困惑.我正在编写一个小型转发代理服务器,并希望在Linux系统上使用OS DNS缓存.
如果我理解正确,那么在浏览器级别就有DNS缓存.然后在操作系统级别有DNS缓存(Windows有它.我不确定Linux发行版是否默认拥有它).
那么,browser/proxy_server如何使用OS DNS缓存?我试图找到我是否可以依靠Linux进行DNS缓存,而不是在我的代理中自己做.
谢谢
我正在尝试开发一些涉及在两个地理位置之间找到距离的东西.
源和目标有很多这样的组合,我在循环中传入google distance API.
我的部分代码:
key_list = [****,****,....] #google key list
base_url = 'https://maps.googleapis.com/maps/api/distancematrix/json?'
for i in geocodes:
for j in key_list:
origin_part = 'origins=' + i[0] + "," + i[1]
destination_part = '&destinations=' + i[2] + "," + i[3]
api_url = base_url + origin_part + destination_part + key
json_response = requests.get(api_url,timeout=10).json()
if json_response["status"] == "OVER_QUERY_LIMIT":
j += 1
i -= 1
Run Code Online (Sandbox Code Playgroud)
这只是我代码的一部分.
geocodes 是包含子列表的嵌套列表
[[source_latitude,source_longitude,destination_latitude,destination_longitude],....]
代码运行正常一段时间,但过了一段时间,它给了我一个错误说:
HTTPSConnectionPool(host='maps.googleapis.com', port=443): Max retries exceeded with url: /maps/api/distancematrix/json?origins=xx,xx&destinations=xx,xx&key=xxxxx
(Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at …Run Code Online (Sandbox Code Playgroud) python google-maps-api-3 python-3.x python-requests google-distancematrix-api