一.netty通讯中tcp心跳维持有以下两种:

1.TCP协议自带的心跳机制来实现,默认2h心跳检测频率。

2.应用层通过协议实现心跳机制。

二.最近的一个物联网项目,整体的通讯架构如下:

服务端和客户端采用tcp连接,通过自定义协议维护心跳,分为两种工况,一种10s正常心跳,一种15min睡眠心跳, 实际通讯中遇到一个问题:客户端5min未有数据上报,平台会发送空包导致客户端断开。

通过tcpdump抓包分析,由于负责代理和负载均衡的Nginx和ELB有如下配置:

stream{
    upstream acpaccess{
        hash $remote_addr consistent;
        server  127.0.0.1:18000 max_fails=3 fail_timeout=10s;  
    }
    server{
        listen 80;
        proxy_connect_timeout 300s;
        proxy_timeout 5m;
        proxy_pass acpaccess;
    }
}

proxy_connect_timeout :连接超时300s后主动发起断开连接,导致客户端与云平台正常连接终端。

netty通讯--tcp心跳异常断开问题排查相关推荐

  1. java如何处理tcp异常断开_(转)TCP连接异常断开检测

    TCP是一种面向连接的协议,连接的建立和断开需要通过收发相应的分节来实现.某些时候,由于网络的故障或是一方主机的突然崩溃而另一方无法检测到,以致始终保持着不存在的连接.下面介绍一种方法来检测这种异常断 ...

  2. ESP Wi-Fi 连接异常断开原因排查分析

    此篇博客用来分析 ESP Wi-Fi 连接异常断开的现象. 1 Wi-Fi 连接的过程 以下是一段 Wi-Fi 顺利连接过程的 log.其中可以清晰的看出 state 的转移(init-> au ...

  3. java如何处理tcp异常断开_针对TCP连接异常断开的分析

    我们知道,一个基于TCP/IP的客户端-服务器的程序中,正常情况下,我会是启动服务器使其在一个端口上监听请求,等待客户端的连接:通过TCP的三次握手,客户端能够通过socket建立一个到服务器的连接: ...

  4. java tcp 心跳机制_java 心跳机制

    心跳机制:就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到客户端信息则视客户端断开. 心跳包 心跳包就是在客户端和服务器间定时通知对方自己状态的一个自己定 ...

  5. 网络基础4(TCP三次握手,四次握手,TCP流量控制,TCP状态转换 , TCP异常断开,设置TCP属性,端口复用)

    TCP协议 TCP通信时序 下图是一次TCP通讯的时序图.TCP连接建立断开.包含大家熟知的三次握手和四次握手. TCP通讯时序 在这个例子中,首先客户端主动发起连接.发送请求,然后服务器端响应请求, ...

  6. python如何判断tcp异常断开_如何判断TCP连接已经中断?

    用Python写网络应用是很常见的,因此一个常见的问题就是,如何在Python代码中判断TCP链接已经中断? TCP有连接,如果通讯的某一方中断的连接,另外一方在socket层面如何感知?这个问题我也 ...

  7. linux的基础知识——TCP异常断开

    1.TCP异常断开 1.1 心跳检测机制 1.2 设置TCP属性

  8. Linux数据链路tcp失败,TCP连接中的异常断开情况处理

    1.TCP连接中可能出现的异常断开情况 假设存在这样一种情况:在两个不同的主机Machine1.Machine2系统上分别运行两个应用程序Application1.Application2,在Appl ...

  9. Netty是如何实现TCP心跳机制与断线重连的

    本文来说下Netty 是如何实现 TCP 心跳机制与断线重连的 文章目录 什么是心跳机制HeartBeat 如何实现心跳机制 Netty实现自定义的心跳机制 服务端 客户端 测试效果 客户端断线重连 ...

最新文章

  1. ILockBytes Windows Mobile 6.5
  2. 简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程。
  3. 集群中几种session同步解决方案的比较[转]
  4. Xcode没有pch文件
  5. 银行家算法实验报告c语言版,银行家算法实验报告C语言版.doc
  6. RabbitMQ 基本概念与高级特性
  7. 戏说云计算之PaaS,IaaS,SaaS
  8. Winform SplitContainer控件可调整大小
  9. EPLAN史上最全部件库,部件宏,EDZ格式,大小合适导入容易 部件包含图片宏
  10. Early stopping conditioned on metric `val_loss` which is not available. Available metrics are: loss,
  11. 衣服尺码自定义排序sql
  12. RPL(4):RFC6550翻译(4)---RPL的通信流支持RPL实例
  13. 迅雷快车旋风链接转换成普通链接工具
  14. CF1152C Neko does Maths
  15. !-- --与%-- --%
  16. 响应式编程之网络新约:RSocket
  17. 宝德服务器系统,宝德服务器系统管理平台用户指南.pdf
  18. 字节跳动VP 谢欣:打造10倍速高效组织的秘密!
  19. 字符串匹配问题(前缀表实现kmp、bmh、指纹思想)
  20. 姿态传感器——MPU6050

热门文章

  1. 年轻一代程序员:社牛、不卷、玩开源
  2. 华夏相机开发/臻识相机开发/车牌识别器开发对接使用总结
  3. 教你用Python画一棵圣诞树
  4. 北航计算机组成原理课程设计-2020秋 【系列完结】Verilog或ISE高级特性与自动化测试
  5. 直通车roi提升优化方法 如何判断直通车权重高低
  6. 滴滴云服务器快速配置搭建滴滴云GPU云服务器搭建深度学习环境
  7. Kutools for Excel 结合 300 多种高级功能和工具
  8. Keil 编译前后 自动将 hex 转 bin
  9. 鸿蒙源码图片,全网最全的鸿蒙源码结构分析(附自制4张架构图)
  10. 利用ViewPager和WheelView实现横向纵向轮番滚动