Типичное время ожидания сетевого сокета - PullRequest
7 голосов
/ 20 декабря 2010

Мне интересно узнать, каково типичное значение тайм-аута сетевого сокета, используемое сегодня в производстве.

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

Спасибо.

Ответы [ 3 ]

12 голосов
/ 20 декабря 2010

Нет такого понятия, как "типичный" тайм-аут сокета. Скорее вы должны выбрать время ожидания в соответствии с требованиями приложения. Такие вопросы, как:

  • Есть ли пользователь, ожидающий ответа?
  • Является ли тайм-аут вероятным событием?
  • Связывает ли установка «слишком длинного» тайм-аута много ресурсов или задерживает обработку?
  • Приведет ли установка "слишком короткого" тайм-аута к потраченной впустую обработке, когда ожидание немного дольше даст результаты?
  • Существует ли механизм поддержания активности ... чтобы можно было различить (скажем) сбой сети и удаленный сервер, занимающий много времени?

Лучшая стратегия, вероятно, состоит в том, чтобы выбрать некоторые интуитивно понятные значения, а затем настроить их.

1 голос
/ 21 декабря 2010

Как правило, вы можете использовать удвоенное ожидаемое время ответа для транзакции.Но, безусловно, нет такого понятия, как «типичный» тайм-аут.

0 голосов
/ 20 декабря 2010

Не существует общего значения, оно сильно зависит от приложения (сколько сообщений отправляется в час, чем больше сообщений отправляется, тем меньше может быть ваш тайм-аут) и используемой сети (более длительный тайм-аут через Интернет, чем через локальныйсети).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...