FTP мониторинг и загрузка новых файлов - PullRequest
2 голосов
/ 13 апреля 2010

У меня есть приложение для мониторинга / загрузки FTP с использованием сокетов C #. Я получил это сообщение об ошибке:

421 Отключение вас, поскольку вы были неактивны в течение 300 секунд.

Может у кого-нибудь есть объяснение этому? Я сделал поиск по этому, но все еще не могу найти хорошее объяснение. Спасибо.

Ответы [ 2 ]

3 голосов
/ 13 апреля 2010

Он говорит, что отключил вас, потому что ваше соединение было неактивным в течение 300 секунд. Это обычная практика на FTP-серверах, поскольку (в отличие от HTTP) FTP не является устройством без сохранения состояния, соединения остаются открытыми, а соединения, которые ничего не делают, могут легко заполнить лимит соединения с сервером.

Очевидное решение заключается в том, чтобы вы не оставались неактивными в течение 300 секунд. Создайте таймер, который делает что-то каждую минуту или около того, например, получает список файлов в текущем каталоге или что-то в этом роде.

РЕДАКТИРОВАТЬ: Как упомянуто в комментарии ChaosPandion, возможно, вам следует просто закрыть соединение, когда вы закончите, и открыть его снова, когда оно вам понадобится снова.

1 голос
/ 13 апреля 2010

Я думаю, это в значительной степени само собой объясняется. Сервер отключает ваше соединение, так как оно не было активным в течение 5 минут. Вопрос в том, что считается деятельностью? Я боюсь, что ответ не будет найден в RFC FTP, так как это может зависеть от реализации. Кроме того, интервал ожидания может варьироваться (его можно настроить с помощью утилиты администрирования FTP).

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

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