Я новичок, который только начал читать о распределенной системе. Мне интересно, какие варианты использования распределенной очереди в отличие от очередей на каждой машине. Например, как RabbitMQ используется среди разных веб-серверов. Как он используется, например, при балансировке нагрузки?Использовать случаи распределенной очереди на веб-сервере?
ответ
Обычно мы используем распределенные очереди, когда первоначальная стоимость обработки некоторых заданий является слишком дорогостоящей или ненужной. Например, когда вы загружаете видео на YouTube, обычно происходит некоторая обработка видео, которое происходит до того, как оно будет отображаться на сайте. В современной сети пользователям может быть неприемлемо ждать, пока происходит эта обработка. Таким образом, видео может быть сохранено и задача помещена в очередь, так что обработка может произойти позже. Затем другие машины, которые проводят опрос в очереди, могут обрабатывать видео на досуге. Это означает, что пользователю не нужно ждать, пока их видео будет обработано, прежде чем они смогут продолжать делать другие вещи на сайте. Он также критически допускает буфер для периодов высокой пропускной способности. Если пользователи загружают видео быстрее, чем они могут обрабатываться серверами YouTube, очередь растет независимо от способности обрабатывать элементы.
Другое соображение заключается в том, что распределенный характер очереди допускает отказоустойчивость. В примере на YouTube, который позволяет веб-сайту отвечать на пользователя, уверяя пользователя, что их видео будет в конечном итоге будет обработан. Обычно распределенные очереди имеют настраиваемые уровни репликации, где, когда элемент помещается в очередь, он гарантированно реплицируется на n узлах и поэтому вряд ли будет потерян.
- 1. Hazelcast Jet - Использовать случаи
- 2. HornetQ: последовательное распределение распределенной очереди
- 3. Использовать случаи инициализатора экземпляра
- 4. Использовать случаи для CollectionDataContractAttribute?
- 5. Все сообщения JMS из распределенной очереди по кластеру
- 6. Весовой образец прототипа - использовать случаи?
- 7. Как использовать Случаи для spinnerlist?
- 8. Использовать случаи PipedInputStream и PipedOutputStream
- 9. Может ли hasoop использоваться как сервер распределенной очереди?
- 10. Когда использовать функцию распределенной сборки XCode
- 11. Как использовать NHibernate в распределенной архитектуре?
- 12. ZeroMQ на основе распределенной системы
- 13. Использовать случаи идентификатора __func__ в C, C++?
- 14. Использовать случаи, чтобы определить переменную как `protected`?
- 15. Использовать случаи do-while-false в C?
- 16. Использовать случаи для ключевого слова 'as'
- 17. Редкие случаи, когда необходимо использовать MACRO
- 18. Использовать случаи для методов возвращаемых концентраторов задач
- 19. Thucyides Тестовые случаи Queuing
- 20. Случаи использования распределенных баз данных
- 21. Общие случаи использования erlang
- 22. Как использовать память в очереди?
- 23. Эффект сети на распределенной сборке aka distcc
- 24. Какие очереди использовать в НОД
- 25. Как использовать очереди() в JQuery
- 26. Рабочее пространство TFS на распределенной VM
- 27. распределенной сеть B + дерева
- 28. Тестирование распределенной файловой системы
- 29. Система управления распределенной версией
- 30. Координатор распределенной транзакции