如歌减少mysql连接过程中延迟过高问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如歌减少mysql连接过程中延迟过高问题相关的知识,希望对你有一定的参考价值。
如歌减少mysql连接过程中延迟过高问题,公司内部使用一款软件需要跟美国那边的mysql连接,然后发现延迟都在4秒左右;
有什么办法提高速度降低延迟吗?
现在已经采用的办法是skip_name_resolve功能打开,但是并没有什么变化,有其他办法能做这个处理吗?能降低到1秒就可以了!
特点是: 当前脚本执行完毕后, 该连接标识不会被释放掉, 下一个脚本文件还可以使用
如果是 MYSQL_CONNECT(); 即使没有使用 MYSQL_CLOSE()函数关闭数据库连接, 当脚本执行完毕后也会自动断开连接 参考技术B 1、配置文件增加:skip-name-resolve
2、使用mysql连接池
linux----CPU使用率过高问题定位过程
1、确定本地网络是否存在延迟或丢包情况
关注点:
1、响应时间
2、丢包率
2、TOP命令(这里先关注CUP使用情况,后期再详细说明)
从上图我们可以看出,3373的进程占用了 %cpu 313.2
说明:
由于该服务器CPU逻辑核数为4核,总共为 400 该进程 占用了 313.2/400
这里我们获取的了进程ID为3373
3、查看线程ID
ps -mp 进程id -o THREAD,tid,time | sort -rn
从上图我们可以看出
1、有占了 cpu 95.8的线程,但是没有TID,这些我们忽略就行
2、重点关注蓝色框中带有TID的线程
4、把线程ID转化为16进制
printf \'%x\\n\' 线程id
得到了d35这样的一个线程ID
5、根据线程的16进程表达来定位是个什么东西
jstack 进程id | grep 线程16进制 -A60
得出了此类信息
这里是一个垃圾回收的线程,由于在我的服务器中,实在找不到占用CPU高的线程
所以就找了这么一个东西来充当了
那么就有同学问了,这里的东西,我们测试人员也看不懂啊,咋办
没事,我也不懂,都是这样截图给开发,让他帮看看是一个什么东西
以上是关于如歌减少mysql连接过程中延迟过高问题的主要内容,如果未能解决你的问题,请参考以下文章