Назад | Перейти на главную страницу

Использует ли сервер пропускную способность при подключении к самому себе?

У меня есть выделенный сервер (CentOS 7) с Storm on Demand. У меня есть приложение rails, работающее на сервере, обслуживаемом nginx и unicorn. Я использую MariaDB на том же сервере. Приложение rails обрабатывает сотни тысяч изображений в год (иногда в месяц). У меня есть другое приложение rails на сервере, которое использует ту же базу данных и обрабатывает загрузку и обработку файлов.

Во время длительной загрузки я перемещаю приложение загрузки на другой выделенный сервер и обновляю настройки DNS для домена приложения загрузки, чтобы выгрузить проблему пропускной способности, процессора и памяти из основного приложения.

Database.yml для основного приложения:

production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: main_app_production
  pool: 5
  username: application
  password: ****
  socket: /var/lib/mysql/mysql.sock

Database.yml для приложения загрузки:

production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  host: host.domain.com # main server's fully qualified domain name
  port: 3306
  database: main_app_production
  pool: 5
  username: application
  password: ****

Причина настройки хоста и порта на сервере загрузки заключается в том, что они не имеют отношения к приложению, работает ли оно на главном сервере или на временном сервере большого объема.

Мой вопрос: когда приложение загрузки работает на том же сервере, что и основное приложение (и, следовательно, на том же сервере, что и база данных), использует ли оно мою ограниченную пропускную способность от Storm, чтобы оно могло подключаться через домен и порт вместо использования по умолчанию localhost? Как я мог это проверить?

Как отмечали другие, если IP-адрес назначения является локальным, трафик, предназначенный для него, никогда не покинет хост. Следует иметь в виду, что вы можете настроить запись DNS A так, чтобы она указывала на localhost (127.0.0.1). Пока единственное, что разрешает это имя хоста, находится в том же поле, нет причин не просто установить его для разрешения на localhost.

Вы можете проверить, отключив сетевой кабель. Если вы все еще можете пропинговать IP-адрес сервера, несмотря на то, что ссылка не работает, вы не будете использовать оплаченную пропускную способность при общении с этим IP-адресом.

AFAIK нет причин, по которым вы бы использовали пропускную способность, за исключением, возможно, разрешения, когда IP-адрес и имя хоста, которые вы используете, не определены в /etc/hosts. Любой настроенный IP-адрес предназначен для локального использования и не будет передаваться по сети.

Возможно, интересен Модель хоста Linux.