开发者社区> 问答> 正文

SLB 端口检测的socket包内容是什么

cfca 2016-03-01 11:40:24 1587

SLB端口存活监听会定时给服务器端口发送socket包,导致程序内部处理异常,想要知道这个socket包的数据内容,我们程序好处理。
java.net.SocketException: Connection reset

    at java.net.SocketInputStream.read(SocketInputStream.java:196)
    at java.net.SocketInputStream.read(SocketInputStream.java:122)
    at java.net.SocketInputStream.read(SocketInputStream.java:210)
    at java.io.DataInputStream.readInt(DataInputStream.java:387)
    at cfca.kt.server.socket.Handler.processRequest(Handler.java:54)
    at cfca.kt.server.socket.Handler.run(Handler.java:44)
分享到
取消 提交回答
全部回答(2)
  • 王胖子plus
    2019-07-17 18:31:48

    SLB使用TCP协议,健康检查的时候,SLB向ECS发起TCP连接,连接成功后再发rst包断开连接,如果对业务有影响,需要考虑能否调整一下应用,在业务上不去处理这样的连接。或者,把健康检查的协议改成HTTP协议,HTTP协议的健康检查,是SLB向ECS使用HTTP协议发起HEAD请求,当然,需要ECS上的应用支持这种访问才行。

    0 0
  • 菜鸟做火箭
    2019-07-17 18:31:48

    你slb配置的什么协议。配置tcp协议测试一下。

    0 0
添加回答