1. 程式人生 > >jenkinsapi出現HTTPConnectionPool Max retires exceeded異常

jenkinsapi出現HTTPConnectionPool Max retires exceeded異常

連接池 傳輸層 .org header cell res padding spa img

python項目通過使用jenkinsapi遠程控制jenkins

jenkinsapi使用的遠程連接方法是requests包,requests包又使用了urllib3,urllib3又引用了httplib。

"""
urllib3 - Thread-safe connection pooling and re-using.
"""

技術分享圖片

requests使用連接池機制,連接池

http的通過設置

Connection:keep-alive

的header頭來表明是長連接,通過傳輸層tcp的長連接實現

短連接會占用較多的端口

socket就是源IP、源端口、協議(scheme)、目的IP、目的端口的五元組

import requests
sess = requests.Session()
adapter = requests.adapters.HTTPAdapter(pool_connections=100, pool_maxsize=100)
sess.mount(‘http://‘, adapter)
resp = sess.get("/mypage")

requests的默認連接池是10個,每個連接池的最大連接數默認也是10個

https://www.kawabangga.com/posts/2740

http://blog.oldboyedu.com/tcp-wait/

http://blog.csdn.net/hetaohappy/article/details/51851880

http://www.cnblogs.com/0201zcr/p/4694945.html

http://codewenda.com/%E6%88%91%E5%8F%AF%E4%BB%A5%E6%9B%B4%E6%94%B9python%E7%9A%84%E8%AF%B7%E6%B1%82%E6%A8%A1%E5%9D%97%E7%9A%84%E8%BF%9E%E6%8E%A5%E6%B1%A0%E5%A4%A7%E5%B0%8F%E5%90%97%EF%BC%9F/

http://docs.python-requests.org/zh_CN/latest/user/advanced.html

https://www.villainhr.com/page/2016/07/23/python%E4%B8%AD%E7%9A%84requests

https://www.villainhr.com/page/2016/07/23/python%E4%B8%AD%E7%9A%84requests

http://blog.csdn.net/hzrandd/article/details/74463313

jenkinsapi出現HTTPConnectionPool Max retires exceeded異常