客户端和server网络中断后提交的批处理还会运行吗?
2013-02-07 11:44
253 查看
在网上看到有人提到这样的问题:客户端和server网络中断后提交的批处理还会运行吗?
这个问题涉及到了SQL server TCP连接的keepAlive。从微软的Blog找到详细的解释:
简单说,keepalive
是SQLserver在建立每一个TCP连接的时候,指定了TCP协议的keepaliveinterval和keepalivetime参数。这样对每个TCP连接,如果该连接空闲时间(没有任何数据交互)超过keepalivetime,TCP协议会自动发出keepalive包检测连接存活与否。如果keepalive检测次数超过注册表TcpMaxDataRetransmissions定义的值而对方还是没有回应,那么TCP就认为该连接有问题而关闭它。通过这样的机制SQLserver能够检测出orphanedconnection等问题。
SQLserver对每个TCP连接缺省指定keep alive为30秒,keepaliveinterval为1秒。WindowsTCP配置的TcpMaxDataRetransmissions缺省是5次。就是说,如果TCP连接idle了30秒,那么TCP会发送第一个keepalive检查。如果失败,那么TCP会每隔1秒重发keepalive包,直到重发5次。如果第五次检测依然失败,则该连接就被close。所以,一个TCP连接如果出现异常问题,大概在35秒的时候就会被close。
关于更多keepAlive的问题可以参考这三篇Blog:
SQL serverconnection KeepAlive 的FAQ
SQL serverconnection Keep Alive 的FAQ(2)
SQL serverconnection Keep Alive 的FAQ(3)
这个问题涉及到了SQL server TCP连接的keepAlive。从微软的Blog找到详细的解释:
简单说,keepalive
是SQLserver在建立每一个TCP连接的时候,指定了TCP协议的keepaliveinterval和keepalivetime参数。这样对每个TCP连接,如果该连接空闲时间(没有任何数据交互)超过keepalivetime,TCP协议会自动发出keepalive包检测连接存活与否。如果keepalive检测次数超过注册表TcpMaxDataRetransmissions定义的值而对方还是没有回应,那么TCP就认为该连接有问题而关闭它。通过这样的机制SQLserver能够检测出orphanedconnection等问题。
SQLserver对每个TCP连接缺省指定keep alive为30秒,keepaliveinterval为1秒。WindowsTCP配置的TcpMaxDataRetransmissions缺省是5次。就是说,如果TCP连接idle了30秒,那么TCP会发送第一个keepalive检查。如果失败,那么TCP会每隔1秒重发keepalive包,直到重发5次。如果第五次检测依然失败,则该连接就被close。所以,一个TCP连接如果出现异常问题,大概在35秒的时候就会被close。
关于更多keepAlive的问题可以参考这三篇Blog:
SQL serverconnection KeepAlive 的FAQ
SQL serverconnection Keep Alive 的FAQ(2)
SQL serverconnection Keep Alive 的FAQ(3)
相关文章推荐
- Flink运行时之客户端提交作业图-下
- python应用系列教程——python使用SocketServer实现网络服务器,socket实现客户端
- 网络编程:server服务器转发消息,多个客户端实现群聊
- 解决Android客户端运行Cococs2dx编写的游戏程序遇到的意外游戏中断导致的游戏黑屏问题
- 当页面编辑或运行提交时,出现“从客户端中检测到有潜在危险的request.form值”问题,该怎么办呢?
- server 2003 安装 VS 2003 遇到的问题 :安装frontpage 2000 web 客户端 和 安装程序运行时文件 失败
- 黑马程序员--10.网络编程--06.【Clinet_Server通信原理】【TCP_客户端和服务端会话】【阻塞式方法的详解】
- Vue项目碰到"‘webpack-dev-server’不是内部或外部命令,也不是可运行的程序或批处理文件"报错
- java main 线程既然被interrupt中断 为什么还会运行后面的
- srs客户端连接CRtmpServer立即中断问题
- Flink运行时之客户端提交作业图-上
- 在Microsoft Azure和Windows Server with Hyper-V环境中运行Linux客户端操作系统时,Oracle database的认证情况
- 【python】网络编程-SocketServer 实现客户端与服务器间非阻塞通信
- GNServer(几何网络分析)扩展ArcGIS Rest—客户端实现
- windows 2003 server开始-运行输入IP访问局域网机子时提示“无任何网络提供程序接受指定的网络路径”
- 客户端运行gpupdate /force,后提示原因是缺少到域控制器的网络连接
- 黑马程序员--10.网络编程--05.【TCP协议相关类】【InetSocketAddress类】【Socket类】【ServerSocket类】【TCP客户端和服务器端】
- 深入理解计算机系统网络编程一节echo客户端服务器端代码的编译运行
- kafka远程客户端 运行producer线程 时报 Unable to connect to zookeeper server within timeout: 400
- python服务器和客户端网络通讯socketserver