Laravel với RabbitMQ
RabbitMQ là một hệ thống hàng đợi tin nhắn mã nguồn mở, được sử dụng rộng rãi để triển khai các giải pháp truyền tải thông điệp (message broker) giữa các ứng dụng. RabbitMQ hỗ trợ nhiều giao thức, phổ biến nhất là AMQP (Advanced Message Queuing Protocol).
Mặc dù trên thị trường hiện nay có rất nhiều hệ thống hàng đợi như aws sqs , redis , hiện nay còn 1 hệ thống hàng đợi đang rất hot là RabbitMQ
1 Tạo project laravel
Tạo laravel app với command :
composer create-project laravel/laravel laravelrabbitmq
Cài đặt gói hỗ trợ rabbitmq với laravel :
composer require vladimir-yuldashev/laravel-queue-rabbitmq
2 : Điều chỉnh file .env
QUEUE_CONNECTION=rabbitmq RABBITMQ_HOST=45.77.45.xxx RABBITMQ_USER=admin RABBITMQ_PASSWORD=xxxxx RABBITMQ_VHOST=demo
Chú ý điền đúng tài khoản và mật khẩu đã tạo, chỗ vhost bạn có thể điền tên bất kì nhưng hãy ghi nhớ nó vì chúng ta sẽ cần cấu hình trong màn hình quản lý của rabbitmq.
3: Điều chỉnh file config/queue.php
Ta thêm cấu hình rabbitmq vào file :
'rabbitmq' => [
'driver' => 'rabbitmq',
'hosts' => [
[
'host' => env('RABBITMQ_HOST', '127.0.0.1'),
'port' => env('RABBITMQ_PORT', 5672),
'user' => env('RABBITMQ_USER', ''),
'password' => env('RABBITMQ_PASSWORD', ''),
'vhost' => env('RABBITMQ_VHOST', '/'),
],
],
],
Vậy là ta đã có thể kết nối laravel với rabbitMQ thành công và sử dụng như như bình thường
Link project demo bạn có thể tham khảo :