Вступление
Beanstalkd - это сервер рабочей очереди, который асинхронно выполняет трудоемкие задачи. Это очень удобно, если вы управляете или разрабатываете приложение (веб, мобильное и т. Д.), Которое должно выполнять трудоемкие задачи (например, отправку электронных писем), и вы не хотите, чтобы ваши пользователи ждали, пока задача выполняется. Вы можете ставить задачи в очередь с помощью Beanstalkd, и ваше приложение переходит к следующей операции.
Beanstalk Console - это интерфейс веб-администратора для Beanstalkd, написанный на PHP. Он предоставляет дружественный интерфейс, который вы можете использовать для просмотра всех заданий и их текущих состояний (срочные, готовые, зарезервированные, отложенные и похороненные).
Монтаж
-
Раскрутите экземпляр сервера Vultr под управлением Ubuntu 14.10 x64 и SSH на сервер после завершения подготовки.
-
Установите Beanstalkd.
sudo apt-get update
sudo apt-get install -y beanstalkd
-
Установите Beanstalk Console с помощью менеджера пакетов PHP, Composer.
sudo apt-get install -y php5 php5-cli
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
composer create-project ptrofimov/beanstalk_console -s dev /app/beanstalk-console
# Note that "/app/beanstalk-console" can be any directory you choose
Бегущий бобовый стебель
-
Убедитесь, что Beanstalkd запущен.
sudo service beanstalkd start
-
Запустите Beanstalk Console, перейдя в каталог, в котором она была установлена, и запустив экземпляр сервера PHP.
cd /app/beanstalk-console
php -S [vultr-instance-ip]:7654 -t public
# *where **[vultr-instance-ip]** is the IP address of the Vultr instance you spun up or a domain name pointing to it*
-
Перейдите к http://[vultr-instance-ip]:7654. Вас встретит "Привет!" экран, который содержит кнопку «Добавить сервер». Нажмите кнопку и примите значения по умолчанию (localhost: 11300).
Стоит отметить, что вам не нужно использовать PHP с Beanstalk. Бобовый стебель не зависит от технологий. Кроме того, в очереди есть две стороны - добавление заданий и удаление заданий. Удаление заданий обычно выполняется с помощью того, что мы называем «рабочим процессом». Если ваш технологический стек использует PHP, вы можете использовать Pheanstalk для выполнения обеих задач.
Заключение
Сервер очередей, который может выполнять задания в фоновом режиме асинхронно, является обязательным условием, учитывая, что пользователи ожидают, что с вашим приложением все происходит мгновенно. Beanstalkd - это проверенный и проверенный сервер рабочей очереди, который может уменьшить проблемы с задержкой в ваших приложениях, тем самым предоставляя пользователям более богатый опыт.