PHP-это язык веб-программирования с коротким жизненным циклом. Многие PHPer сформировали модель мышления программирования в рамках FPM. На самом деле, после появления swool режим последовательного программирования был нарушен. С помощью swool вы можете легко реализовать более гибкое параллельное программирование.
Введение в сцену Предположим, мы хотим создать веб-игру из камня, ножниц и ткани. Три игрока одновременно высказывают свои догадки и показывают победителя. В традиционном последовательном веб-программировании наша общая идея заключается в следующем:
Установите форму формы и сохраните ее в MySQL/redis после того, как пользователь отправит заявку, добавьте кнопку “Просмотреть результаты”, и если она еще не закончена, это покажет, что она ждет отправки другими участниками. Когда все трое отправят, запросят хранилище и отобразят конечный результат параллельного программирования В этом сценарии, вы можете использовать swool для реализации параллельного программирования, не полагаясь на хранилище MySQL/redis, и завершить угадывание в памяти.
Когда пользователь отправляет конкурс, удерживайте запрос, и результат не будет возвращен. Пользователь переходит в состояние ожидания. Текущие запросы и соединения остаются в памяти, когда все три человека отправляют, содержимое соответствующих запросов извлекается из памяти, а ответ отправляется на все запросы с помощью вычисления и реализации кодирования обхода
Процедура выполнения php game.php Откройте три вкладки chrome. И входящее имя в URL-адресе-это a, B и C соответственно, представляющие трех пользователей.
При отправке первого и второго результатов результаты не возвращаются, и chrome зацикливается на ожидании, пока сервер вернет результаты. При отправке третьей формы три страницы вкладок возвращают результаты одновременно.
Проблема параллелизма Параллельное программирование является более мощным и сложным, чем последовательное программирование. Параллельное программирование столкнется с новыми проблемами, которых раньше не было в последовательном программировании, такими как:
Проблемы с синхронизацией данных Проблемы с управлением контекстом Проблема времени Это требует от разработчиков более строгого инженерного мышления, а также более глубоких навыков программирования.
Изменение мышления На самом деле, swool подрывает предыдущий режим программирования PHP, делая видение программиста больше не ограниченным обработкой запроса, больше не ограниченным работой с базой данных и вызовом интерфейса. Благодаря возможностям совместного программирования, предоставляемым swoole4, в пространстве памяти могут быть реализованы различные сложные взаимодействия.
Новая модель программирования позволяет Php легко реализовывать онлайн-игры, серверную систему, умный дом, Интернет вещей и другие проекты.
Перепечатка: https://course.swoole-cloud.com/article/9