Готовый перевод Mastering Swoole PHP: Build High Performance Concurrent System with Async and Coroutines / Осваиваем Swoole PHP: построение высокопроизводительной конкурентной системы с асинхронностью и корутинами: Конкурентные модели
Конкурентные модели
При решении проблем конкурентности потребуется проработать два основных вопроса. Первый — до какой степени можно линейно масштабировать параллельные решения, не слишком теряя в производительности или ресурсах. Второй — как синхронизировать состояния и поддерживать их актуальными.
Рисунок 4.4 (Наиболее популярные модели конкурентности)
Источник: https://unixism.net/2019/04/linux-applications-performance-introduction
Наиболее популярными конкурентными моделями, используемыми языками программирования и фреймворками, являются forking, preforked, threaded, prethreaded, poll, epoll. Prethreaded модель используется многими языками программирования наряду с epoll в Linux.
На приведенном выше рисунке видно, что производительность моделей forking, preforked, threaded резко снижается по мере роста конкурентности. Но модели epoll и prethreaded могут обслуживать не менее 10000 одновременных соединеней без существенного снижения производительности, и epoll является наиболее масштабируемой моделью.
В зависимости от нагрузки и уровня конкурентности, вам необходимо выбрать модель, подходящую для вашего приложения, чтобы сделать систему быстрой и экономичной.
Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод
Переведено на Нотабеноиде
http://notabenoid.org/book/81342/496686
Переводчики: Kee, bubenok
Настройки
Готово:
