(这是rails app fast on server, but slow when accessed from another machine的后续行动。)
我有一个Rails网络应用程序,当我通过其主机名访问时速度非常慢,但是当我通过其IP地址访问时以正常速度运行(或者通过localhost,如果我在运行它的同一台服务器上访问它)。这让我觉得问题出在DNS上。 (此外,所有这些计算机都在同一企业内部网上运行。)
但是,当我从终端ping主机名时,ping似乎运行正常。 ping的工作原理是否表明问题是而不是与DNS? (我对DNS或服务器和网络并不是很了解,所以我在这里有点挣扎。)
更新添加:我还运行了一个简单的“Hello world”Sinatra应用程序,当通过主机名访问时,它也会非常缓慢地运行(但不是通过IP地址访问时)。
答案 0 :(得分:1)
来自终端的快速ping表明你和DNS服务器之间的DNS很好,你和服务器之间的网络很好。
这对您服务器上的DNS仍无效。您有服务器执行的任何网络操作吗?如果是这样,您需要确保网络可以访问。
我建议你在那里部署一个简单的“hello world”Rails应用程序,看看它是否与Rails相关(服务器范围)或你的应用程序相关(非常容易)。
另一个建议是分析您的Rails应用程序,看看哪些操作需要时间来完成。
答案 1 :(得分:0)
您的ping命令可能使用缓存的DNS,而不是每次都点击服务器。谷歌为“flushdns”找到正确的语法来清除你的特定操作系统的缓存,然后尝试它。如果您想使用ping来查看DNS响应,则每次都需要这样做。