Mysql连接 - 通过IP然后域连接更快?

时间:2016-04-16 16:27:28

标签: php mysql dns ip

问题

这个更快

$servername = "125.125.55.10";
$username = "username";
$password = "password";
$conn = new mysqli($servername, $username, $password);

还是这个?

$servername = "mysql.server.com";
$username = "username";
$password = "password";
$conn = new mysqli($servername, $username, $password);

或它对速度没有影响?

我不知道它是否有任何实际用途,但毫秒是毫秒......

谢谢

2 个答案:

答案 0 :(得分:2)

是的,它可以被认为稍快一些,因为不需要将域解析为IP地址(DNS查找)。但是,大多数现代技术将在建立连接时缓存IP地址,这意味着不必为每个到同一地址的连接进行DNS查找。因此,除了第一次连接到站点之外,差异是可以忽略的,甚至最多只能持续几秒钟。

答案 1 :(得分:0)

问题是,当您的Web服务器第一次访问mysql-database时,它将缓存已解析的主机名。 使用IP的问题在于它基本上是硬编码,难以grep,IP可以更频繁地更改主机名等。 更重要的是:把时间花在像

这样的过早优化上
  • 使用hostname / ip连接
  • 使用unix socket / tcp socket连接
  • 是否使用持久连接?<​​/ li>
如果你的表/脚本没有优化,

是浪费时间。

在数据库(sql / nosql)性能中寻找什么:

  • 学习使用dbms索引/学习“EXPLAIN查询”
  • 永远不会逐个更新大量行,仅以批处理模式更新
  • 在开发项目时,生成LOT(> 500k行)的假数据并将其插入数据库,这样您就可以知道在生产服务器受到影响之前“完美查询”的速度有多慢