Giới thiệu
Beanstalkd là một máy chủ hàng đợi công việc chạy các nhiệm vụ tốn thời gian không đồng bộ. Nó rất hữu ích nếu bạn quản lý hoặc phát triển một ứng dụng (web, di động, v.v.) cần thực hiện các tác vụ tốn thời gian (như gửi email) và bạn không muốn người dùng của mình chờ trong khi tác vụ đang chạy. Bạn có thể xếp hàng các tác vụ với Beanstalkd và chuyển ứng dụng của bạn sang thao tác tiếp theo.
Beanstalk Console là giao diện quản trị web cho Beanstalkd được viết bằng PHP. Nó cung cấp một giao diện thân thiện mà bạn có thể sử dụng để xem tất cả các công việc và trạng thái hiện tại của chúng (khẩn cấp, sẵn sàng, dành riêng, trì hoãn và chôn vùi).
Cài đặt
-
Tạo một phiên bản máy chủ Vultr chạy Ubuntu 14.10 x64 và SSH vào máy chủ sau khi cung cấp xong.
-
Cài đặt Beanstalkd.
sudo apt-get update
sudo apt-get install -y beanstalkd
-
Cài đặt Beanstalk Console bằng cách sử dụng trình quản lý gói của PHP, Trình soạn thảo.
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
Chạy Beanstalk
-
Hãy chắc chắn rằng Beanstalkd đang chạy.
sudo service beanstalkd start
-
Khởi động Beanstalk Console bằng cách vào thư mục nơi nó được cài đặt và bắt đầu một cá thể máy chủ 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*
-
Điều hướng đến http://[vultr-instance-ip]:7654
. Bạn sẽ được chào đón bằng một câu "Xin chào!" màn hình có nút "Thêm máy chủ". Nhấp vào nút và chấp nhận mặc định (localhost: 11300).
Một điều cần lưu ý ở đây là bạn không phải sử dụng PHP với Beanstalk. Beanstalk là bất khả tri công nghệ. Ngoài ra, có hai mặt của hàng đợi - thêm công việc và xóa công việc. Loại bỏ công việc thường được thực hiện bởi những gì chúng ta gọi là "quy trình công nhân". Nếu ngăn xếp công nghệ của bạn sử dụng PHP, bạn có thể sử dụng Pheanstalk để thực hiện cả hai tác vụ.
Phần kết luận
Một máy chủ hàng đợi có thể chạy các công việc trong nền không đồng bộ là điều bắt buộc người dùng phải mong đợi mọi thứ sẽ xảy ra ngay lập tức với ứng dụng của bạn. Beanstalkd là một máy chủ xếp hàng công việc đã được thử nghiệm và thử nghiệm có thể làm giảm các vấn đề về độ trễ với các ứng dụng của bạn, do đó khiến người dùng của bạn có trải nghiệm phong phú hơn.