你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

KeepAliveSocketFactory 类

  • java.lang.Object
    • SSLSocketFactory
      • com.microsoft.azure.storage.core.KeepAliveSocketFactory

public class KeepAliveSocketFactory

保留供内部使用。

此类型用于帮助解决 JDK 中的 bug,即在重试的请求上不遵循连接超时。 换句话说,如果客户对某个操作设置了超时,则仅在首次尝试请求时才会遵循此超时。 重试将导致加载将忽略超时参数的其他基础连接实现。 因此,如果在这些重试后连接断开,请求可能会永远挂起。

在这些情况下,启用保持连接超时充当回退,因此,即使忽略操作超时,套接字最终仍会超时,并且请求将被取消。 我们通过 SocketFactory 的包装器实现启用保持活动超时。 我们使用默认套接字工厂从系统获取套接字,然后在返回到客户端之前将 keep-alive 选项设置为 true。 此工厂将在 HttpsUrlConnection 对象上设置。

方法摘要

修饰符和类型 方法和描述
Socket createSocket(InetAddress inetAddress, int i)
Socket createSocket(InetAddress inetAddress, int i, InetAddress inetAddress1, int i1)
Socket createSocket(Socket socket, String s, int i, boolean b)
Socket createSocket(String s, int i)
Socket createSocket(String s, int i, InetAddress inetAddress, int i1)
String [] getDefaultCipherSuites()
KeepAliveSocketFactory getInstance()
String [] getSupportedCipherSuites()

方法详细信息

createSocket

public Socket createSocket(InetAddress inetAddress, int i)

参数:

inetAddress
i

createSocket

public Socket createSocket(InetAddress inetAddress, int i, InetAddress inetAddress1, int i1)

参数:

inetAddress
i
inetAddress1
i1

createSocket

public Socket createSocket(Socket socket, String s, int i, boolean b)

参数:

socket
s
i
b

createSocket

public Socket createSocket(String s, int i)

参数:

s
i

createSocket

public Socket createSocket(String s, int i, InetAddress inetAddress, int i1)

参数:

s
i
inetAddress
i1

getDefaultCipherSuites

public String [] getDefaultCipherSuites()

getInstance

public static KeepAliveSocketFactory getInstance()

getSupportedCipherSuites

public String [] getSupportedCipherSuites()

适用于