Python与MySQL如何实现持久化连接及短链接问题
发布时间
阅读量:
阅读量
一 、什么是长连接?
实际上,在讨论网络通信时,默认情况下我们指的是短连接而非长连接。也就是说,在这种情况下服务器会一直与客户端保持连通以处理请求。
通常的短连接操作步骤是:
连接-》数据传输-》关闭连接;
而长连接通常就是:
连接-》数据传输-》保持连接-》数据传输-》保持连接-》…………-》关闭连接;
规定长连接在无数据通信的情况下定期发送数据包以维持连接状态而短连接则无需等待任何数据传输即可立即关闭
什么时候用长连接,短连接?
长连接主要应用于少数客户端与服务端之间的频繁通信 ,因为在这样的情况下 ,频繁使用短连接不仅会导致Socket错误频发 ,还会因频繁创建Socket而导致资源利用率下降 。
但是,在服务端环境中
总之,长连接和短连接的选择要视情况而定。
首先,在长时间未执行任何数据库操作的情况下(即当超时值设置后),mysql server 会关闭此连接;从而导致客户端在进行查询时会收到类似‘MySQL server has gone away’的错误提示。
为了实现与数据库的有效连接,在调用.mysql_real_connect后(或者说是完成后),我们建议依次配置一次.mysql_options(&mysql,MYSQL_OPT_RECONNECT,…),以便将此功能设为默认开启状
全部评论 (0)
还没有任何评论哟~
