Задать вопрос

Почему получаю ошибку от RabbitMQ?

История такая, есть сервис написанный на Laravel, использующий GraphQL. По сути - обычный CRUD. Хотел повесить событие на мутацию по изменению пользователя, чтобы отправлялось сообщение в RabbitMQ. Ранее с очередями никогда не работал, но кажется суть понимаю, почитал что нашёл и т.д.

Теперь к сути, вызываю незамысловатый код:

public function execute($message)
    {
        /**
             * Создаёт совединение с RabbitAMQP
             */
            $connection = new AMQPStreamConnection(
                'hawk.rmq.cloudamqp.com',	#host - имя хоста, на котором запущен сервер RabbitMQ
                1883,       	#port - номер порта сервиса
                'hbcittgb',    	#user - имя пользователя для соединения с сервером
                'yaCPZE87Yn1XGq_Vwmg2yQCtdYrc-MIm',     	#password
                'hbcittgb'
                );
    
                $channel = $connection->channel();

                $channel->queue_declare('hello', false, false, false, false);
                
                $msg = new AMQPMessage('Hello World!');
                $channel->basic_publish($msg, '', 'hello');
                
                $channel->close();
                $connection->close();
    }


Использовал эту библиотеку:
https://github.com/php-amqplib/php-amqplib

Версия PHP - 8.0.

Рэббита ставил стороннего, облачного. Отсюда:
https://www.cloudamqp.com/

Получаю ошибку:
"The connection timed out after 3 sec while awaiting incoming data"

Ну и в кролике соответственно никаких изменений не вижу. В чём проблема, куда копать, как решать?
  • Вопрос задан
  • 406 просмотров
Подписаться 2 Простой 3 комментария
Решения вопроса 1
vekov
@vekov Автор вопроса
Довольно глупая история получилась, просто авторизация на этом облачном сервисе не работает похоже. Поставил на отдельном VPS rabbitmq-server и всё завелось без проблем.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы