我使用python的请求库向远程服务器(rtt大约300ms)发出请求,运行nginx并终止SSL。 这是我的代码:
s = request.Session()
s.get('https://example.com') # runs in 1000 milliseconds
time.sleep(XXX)
s.get('https://example.com') # runs in YYY milliseconds
当XXX的值相对较小(小于60秒)时,第二个呼叫在大约300毫秒(YYY=300
)内运行 - 跳过SSL握手。
但是当XXX的值较大时,大约2分钟或更长时间,该呼叫再次需要1000,因为它必须重做SSL握手。
我希望对我的远程服务器的连续调用运行得更快,并在第一次协商后跳过SSL握手。
我的远程服务器正在运行nginx,我尝试将keepalive_timeout
设置为10分钟,但这并没有帮助缓存SSL凭据。
我试图寻找一种方法来控制request.Session的连接超时,但是看不到控制它的方法(你可以在HTTP上设置keepalive头)。 / p>
有谁知道如何增加Session对象必须刷新SSL连接的时间?