keepalive传输层的TCP协议,keep-alive应用层的HTTP协议
TCP的keepalive是在ESTABLISH状态的时候,双方空闲没有数据传输,多次发送心跳包检测连接是否存活(如果每次返回的都是RST,而不是ACK,则释放当前连接)。而HTTP的keep-alive说的是如何避免进行重复的TCP三次握手和四次挥手的环节,目的在于短时间内在同一个连接上进行多次请求/相应 keepalive只能检测连接是否存活,不能检测连接是否可用。例如,某一方发生了死锁,无法在连接上进行任何读写操作,但是操作系统仍然可以响应网络层keepalive包。
keep-alive并不是默认开启的,在Linux系统上没有全局的选项去开启TCP的keep-alive。开启keep-alive的应用必须在TCP的Socket中单独开启。 http长连接是为了复用连接,减少握手
tcp长连接是为了探测存活,是在ESTABLISH状态时

最新文章

  1. javascript 类型转换。
  2. `这个符号在mysql中的作用
  3. Java中MyEclipse快捷键整理
  4. marathon新建应用映射端口限制
  5. mysql临时表的产生
  6. AIX 环境下Telnet返回提示所有端口已经被占用,处理方法
  7. 招聘:有兴趣做一个与Android对等的操作系统么?
  8. CSS使jsp图片旋转90度
  9. 在sql2008的实例 中 编写存储过程 读取 版本为sql2005 的实例 中的某个数据库里的数据
  10. Delphi XE5 附破解补丁
  11. console.log几个小知识
  12. oracle之sql语句优化
  13. C#程序员阅读的书籍
  14. The type 'System.Object' is defined in an assembly that is not referenced
  15. js实现选中div内容并复制到剪切板
  16. Django12-ModelForm中创建局部钩子和全局钩子
  17. python第六天函数,定义、调用、不带参函数、带参函数等
  18. 使用AutoFac实现依赖注入
  19. osg::Image::AllocationMode
  20. strcmp用法

热门文章

  1. sigslot之简化版
  2. 【LeetCode】775. Global and Local Inversions 解题报告(Python)
  3. 【LeetCode】166. Fraction to Recurring Decimal 解题报告(Python)
  4. TensorFlow.NET机器学习入门【4】采用神经网络处理分类问题
  5. NPM镜像地址
  6. 「超市管理系统——商品管理」 · Java Swing + MySQL JDBC开发
  7. Oracle对表空间、用户、用户权限的操作
  8. Error: Cannot find module '@dcloudio/uni-cli-i18n' 解决方案
  9. nginx 安装配置及使用 启动权限拒绝问题
  10. Swoole 进程管理模块 Process 之单进程的使用