Чтобы уточнить:
Я использую свое публичное имя хоста для подключения к базе данных MySQL. Имя хоста соответствует внешнему IP моего сервера (например, 1.2.3.4). Данные, которые я отправляю / получаю через соединение MySQL, идут через Интернет вообще? Будет ли быстрее использовать localhost? Это займет полосу пропускания моего сервера?
linux
networking
mysql
bandwidth
Том Мартинал
источник
источник
Если вы используете «localhost» в качестве имени хоста для подключения к вашему серверу MySQL, MySQL будет использовать не TCP, а сокеты. Это должен быть самый быстрый способ подключения к локально работающему серверу MySQL.
Если на вашем сервере внешний IP-адрес настроен «правильно», то есть он не находится за брандмауэром или прокси-сервером во внутренней сети, трафик не покинет ваш сервер, поскольку он знает, что целевой IP-адрес той же системы.
источник
lo
адаптер, который является псевдо-адаптером, который используется только для этих адресов. Не уверен насчет Windows, но я думаю, что она имеет нечто подобное.Вы ничего не упоминаете о своем оборудовании для маршрутизации или коммутации, но вы можете сделать все возможное, чтобы ваши данные вышли наружу, прежде чем вернуться, но в действительности почти наверняка ваши данные не будут выходить таким образом.
источник
Нет, если все находится на одной машине, она не покидает машину.
источник
если конфигурация ip вашего сервера на его машине использует публичный IP-адрес, то ваш сервер не покинет трафик (но безопаснее быть уверенным и в любом случае использовать localhost для повышения производительности)
если ваш IP-адрес указан и ваш маршрутизатор имеет общедоступный IP-адрес, а ваш сервер имеет внутренний IP-адрес, то, по крайней мере, трафик, скорее всего, покинет ваш сервер и будет отражен обратно на ваш сервер от маршрутизатора, при условии, что маршрутизатор отображает порт как часть переадресации портов - так что в некотором смысле трафик не покинет вашу сеть, но часть трафика уйдет с вашего сервера
без какой-либо информации о настройке сети я не могу быть более определенным, чем это
источник
Отключите кабель Ethernet или отключите Wi-Fi и попробуйте подключиться к базе данных, и вы получите ответ. Нет суеты, нет суеты!
источник
Ваши результаты могут отличаться, но я могу получить доступ к своей системе через внешний адрес, но маршрутизатор отключен от Интернета. Однако для этого мне пришлось настроить маршрутизатор с соответствующим фиксированным IP-адресом, так как обычно он выдается провайдером через DHCP.
Что касается разницы в скорости, теоретически использование localhost должно быть быстрее, поскольку оно устраняет различные издержки, связанные с обходом сети. В реальном выражении разница должна быть настолько минимальной, что вы никогда не сможете заметить ее.
источник
В дополнение к traceroute (уже упоминавшемуся) вы можете использовать tcpdump или wireshark и следить за маршрутизацией любых соединений mysql с вашего хоста. Localhost всегда должен быть быстрее.
источник