haproxy和nginx的区别

haproxy和nginx的区别,第1张

区别您说的是代理嘛?

Nginx的优点:

1、优点工作在OSI第7层,可以针对http应用做一些分流的策略

2、Nginx对网络的依赖非常小,理论上能ping通就就能进行负载功能

3、Nginx安装和配置比较简单

4、可以承担高的负载压力且稳定

5、Nginx可以通过端口检测到服务器内部的故障

6、Nginx不仅仅是一款优秀的负载均衡器/反向代理软件,它同时也是功能强大的Web应用服务器

Nginx的缺点:

1、Nginx不支持url来检测。

2、Nginx仅能支持http和Email,这个它的弱势。

3、Nginx的Session的保持,Cookie的引导能力相对欠缺。

HAProxy的优点

1、HAProxy是支持虚拟主机的

2、支持url检测后端的服务器

3、它跟LVS一样,本身仅仅就只是一款负载均衡软件;单纯从效率上来讲HAProxy更会比Nginx有更出色的负载均衡速度,在并发处理上也是优于Nginx的;

4、HAProxy可以对Mysql读进行负载均衡,节点检测

5、HAProxy的算法较多

int STDCALL mysql_ping(MYSQL *mysql)

描述:

检查与服务端的连接是否正常。连接断开时,如果自动重新连接功能未被禁用,则尝试重新连接服务器。该函数可被客户端用来检测闲置许久以后,与服务端的连接是否关闭,如有需要,则重新连接。

返回值:连接正常,返回0;如有错误发生,则返回非0值。返回非0值并不意味着服务器本身关闭掉,也有可能是网络原因导致网络不通。

错误码:CR_COMMANDS_OUT_OF_SYNC 命令以不正确的顺序执行

CR_SERVER_GONE_ERROR 服务器连接断开

。。。。。

conn本来 就已经被你定义成了 函数, conn.ping()当然不存在了。而且你要的数据库连接c,还被手动关闭了。我觉得有两点1. 按照你这个脚本的情况,你用一次,就新建一个数据库连接问题应该不大。2. 要保持使用一个连接的话。把c作全局变量 c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")使用的时候,直接用c但是不要close,当然要先判断这个连接是否已经断开了,如是再重新连一次。或者把连接放到一个连接池里面,用的时候直接去连接池里面取。连接池可以看看 DBUtils模块 你说的conn.ping() 看看是不是在c里面,c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")就是这个对象里面,看看有没有判断连接是否断开的方法。 因为没用过 MySQLdb模块。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7352831.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存