mysql跨服务器连接慢_php跨服务器访问,获取数据非常慢。

当PHP代码在服务器A运行,访问位于服务器B的MySQL数据库时,数据获取速度显著变慢。问题主要归因于两服务器间的网络通道延迟。建议检查网络延迟,避免DNS反向解析,考虑使用数据库缓存或在本地创建数据库镜像以提高性能。采用长连接方式和优化网络连接策略也可缓解此问题。
摘要由CSDN通过智能技术生成

我现在是代码在服务器A, 数据库在服务器B 。

从服务器A去访问服务器B,获取数据会非常慢。

如果用服务器A去访问服务器A,速度就正常。

有什么方法可以解决 跨服务器访问获取数据非常慢这个问题?

回复讨论(解决方案)

用什么方式访问的,贴代码

主要还是两个服务器间网络通道的问题。

用什么方式访问的,贴代码

$host = '远程服务器ID地址:3306'; $root = '用户名'; $pwd = '密码';$con = @mysql_connect($host,$root,$pwd);mysql_query("set names 'utf8'");@mysql_select_db("XS", $con) or die(mysql_error());

这种。

主要还是两个服务器间网络通道的问题。

我这是服务器不是一个机房的。 是两个地区的服务器,有时候从服务器A向服务器B提交数据,比如做个循环查询,有时候只能查询出其中的一部分,不是全部都查询出来。

这个是不是因为跨服务器+跨地区访问的原因。

这个就是网络通道的问题。网络差。

条件允许最好弄在一个机房。

据我了解都是挤一个机房的

ping 一下远程服务器id,看延时大不大

数据库那台机有开反向解析吗?

这是两台服务器的网络通信问题,如果你是请求域名地址,建议直接换成请求ip,减少解析时间

最好数据库和服务器 不要相隔太远吧,如果实在要这么分开吧,可以用下数据库缓存

显然你是用的是 MySQL 数据库(Oracle、 SQL Server)都不会出现zhezhongqingkuang

因为目前的 MySQL 还不支持分布式应用

远程访问数据库时,慢点是正常的。因为网络节点很多,每个节点都会有延时

php 程序应采用长连接方式

最好是在本地做一个数据库镜像

如果频繁读取,你可以对数据读左一层缓存,比如memcache,也能解决部分问题

最好在本地做一个这样的数据镜像。

数据库那台机有开反向解析吗?

关闭了DNS反向解析,会引起其他的问题吗?

3Q明白了。 谢谢大家。

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值