Проблема C10k

редактировать

Проблема C10k - это проблема оптимизации сети сокеты для одновременной обработки большого количества клиентов. Имя C10k - это нумероним для одновременной обработки десяти тысяч соединений. Обратите внимание, что одновременные соединения не то же самое, что запросов в секунду, хотя они похожи: обработка большого количества запросов в секунду требует высокой пропускной способности (обработка их быстро), в то время как большое количество одновременных подключений требует эффективного планирования соединений.. Другими словами, обработка большого количества запросов в секунду связана со скоростью обработки запросов, тогда как система, способная обрабатывать большое количество одновременных соединений, не обязательно должна быть быстрой системой, только такой, где каждый запрос будет детерминированно возвращать ответ. в течение (не обязательно фиксированного) конечного количества времени.

Проблема оптимизации сервера сокетов была изучена, потому что необходимо учитывать ряд факторов, чтобы позволить веб-серверу поддерживать множество клиентов. Это может включать сочетание ограничений операционной системы и программного обеспечения веб-сервера. В зависимости от объема услуг, которые должны быть доступны, и возможностей операционной системы, а также аппаратных соображений, таких как возможности многопроцессорной обработки, может быть предпочтительна модель многопоточности или однопоточная модель. Одновременно с этим аспектом, который включает соображения относительно управления памятью (обычно связанной с операционной системой), подразумеваемые стратегии относятся к очень разнообразным аспектам управления вводом-выводом.

История

Термин был придуман в 1999 г. Дэном Кегелем, со ссылкой на Simtel FTP-хост, cdrom.com, обслуживающий одновременно 10 000 клиентов со скоростью более 1 гигабит в секунду Ethernet в этом году. С тех пор этот термин использовался для описания большого количества клиентов с аналогичными нумерациями для большего количества подключений, в последнее время «C10M» в 2010-х.

К началу 2010-х миллионы подключений на одном стал возможен массовый стоечный сервер 1U: более 2 миллионов подключений (WhatsApp, 24 ядра, с использованием Erlang на FreeBSD ), 10–12 миллионов подключений (MigratoryData, 12 ядра, использующие Java в Linux ).

Общие приложения с очень большим количеством подключений включают в себя pub / sub серверы, чат, файловые серверы, веб-серверы и программно определяемые сети.

См. Также
Ссылки
Последняя правка сделана 2021-05-13 09:27:06
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте