Что происходит, когда Tomcat терпит неудачу во время процесса загрузки. Будет ли это просто выбросить ошибку 50X. Можно ли изящно обрабатывать сбой сервера и перенаправлять остальную часть запроса на другой сервер.Может ли длинная загрузка файла обрабатываться кластером (Tomcat) серверов, где, если один сервер выходит из строя/сбой во время загрузки, другой выбирает его
ответ
Я точно не знаю о tomcat, но это TCP-соединение. Если загрузка завершится неудачей, соединение TCP перестанет работать. Клиент прекратит загрузку.
Если у клиента есть возможности повторной попытки, позволяющие перезагрузить загрузку в данной позиции в файле, его можно перезапустить с помощью нового сервера. В общем, это не общая способность веб-клиентов, многие сайты с большой загрузкой файлов имеют flash-клиенты, которые интегрируют возобновление загрузки.
Если вы хотите сделать это с большей прозрачностью, то вы можете иметь веб-интерфейс, который следит за потоками TCP и поддерживает состояние TCP. Если он обнаружит сбой, он может передать это состояние новому серверу и передать ему поток, чтобы продолжить загрузку, как если бы поток TCP никогда не прерывался.
Это не тривиально, но и вводит новую точку отказа. Основное преимущество заключается в том, что он будет работать с любым клиентом, если клиент не откажется от соединения (он может только разрешать сбои сервера на вашей стороне, а не возобновлять загрузки, поврежденные на стороне клиента)
Adam
Похоже, что вам нужен какой-то load balancer/failover. В принципе, машина, которая выступает в качестве интерфейса перед несколькими компьютерами - она прослушивает трафик извне и пересылает его узлам (вычисляет) внутри кластера. Если один узел выходит из строя, он знает, как перенаправить трафик на другой компьютер. Это потребовало бы, чтобы все узлы были синхронизированы друг с другом, так что такие транзакции, как передача TCP, могут быть продолжены без пропусков.
Это чаще всего используется в аппаратных средствах, а не в программном обеспечении. В любом случае это не очень тривиально.
- 1. Загрузка файла на несколько серверов?
- 2. Что делать, если во время тестирования сервер выходит из строя?
- 3. Может ли изображение отображаться во время его загрузки?
- 4. Несколько серверов на один сервер
- 5. Разрешить пользователю перемещаться во время загрузки файла
- 6. Загрузка файла программно из узла.js на другой веб-сервер
- 7. Возможно ли, что AIR воспроизводит видео во время его загрузки.
- 8. Что происходит во время загрузки файла?
- 9. Создавать сервер cgi из html Javascript, во время загрузки?
- 10. Файл доступа во время его загрузки (Linux)
- 11. UTF8 скремблирование во время загрузки файла C++
- 12. Показать Загрузка анимации во время загрузки данных в другой поток
- 13. Показана загрузка анимации во время загрузки страницы
- 14. Загрузка файла на мой PHP-сервер с использованием POST и передача его на другой внешний сервер
- 15. ASP.NET - перемещение файла во время загрузки в настоящее время
- 16. Резюме Поддерживается ОДИН Время загрузки файла
- 17. java.lang.OutOfMemoryError во время загрузки файла
- 18. Как отправить данные на сервер во время загрузки файла?
- 19. Просмотреть загруженное изображение во время его загрузки?
- 20. Воспроизведение mp3-файла во время загрузки?
- 21. Может ли один класс генерировать сигнал и обрабатываться другим классом?
- 22. Процесс загрузки файла во время загрузки
- 23. NullPointerException во время загрузки файла
- 24. Может ли HBox «hgrow» обрабатываться через CSS?
- 25. Показать «Загрузка изображения» во время загрузки страницы
- 26. Сохранение сеанса PHP во время загрузки файла/загрузки
- 27. Загрузка XAML во время выполнения?
- 28. Yii: Получение расширения файла во время загрузки
- 29. Обнаруживать во время выполнения, если загрузка атома?
- 30. один домен несколько серверов