현재 위치: > 최신 기사 목록> PHP 및 RabbitMQ를 사용하여 신뢰할 수있는 메시징을 구현하는 방법 : 설치에서 코드 샘플까지

PHP 및 RabbitMQ를 사용하여 신뢰할 수있는 메시징을 구현하는 방법 : 설치에서 코드 샘플까지

M66 2025-06-21

개요

현대의 애플리케이션 개발에서 메시징은 중요한 의사 소통 메커니즘이되었습니다. 인기있는 메시지 대기열 미들웨어 인 RabbitMQ는 효율적이고 신뢰할 수있는 메시지를 달성하는 데 도움이 될 수 있습니다. 이 기사를 사용하면 PHP 및 RabbitMQ를 사용 하여이 메시징 메커니즘을 구현하는 방법을 살펴보고 신속하게 시작하는 데 도움이되는 코드 예제를 제공합니다.

RabbitMQ를 설치하십시오

먼저 RabbitMQ를 설치해야합니다. 운영 체제에 따라 해당 설치 패키지를 선택하고 공식 문서의 단계에 따라 설치할 수 있습니다. 설치가 완료된 후 RabbitMQ 서비스가 성공적으로 시작되었는지 확인하십시오.

PHP AMQP 확장을 설치하십시오

PHP가 RabbitMQ와 통신하려면 AMQP 확장을 설치해야합니다. 다음 명령을 사용하여 설치할 수 있습니다.
# pecl 명령을 사용하여 $ pecl 설치 amqp를 설치하십시오.
# 작곡가를 사용하여 $ Composer를 설치하려면 PHP-AMQPLIB/PHP-AMQPLIB가 필요합니다

RabbitMQ에 연결하십시오

PHP에서 RabbitMQ를 연결할 때는 호스트, 포트, 사용자 이름 및 비밀번호 등을 포함한 필요한 연결 매개 변수를 제공해야합니다. 다음은 연결을 설정하기위한 예제 코드입니다.
요구_once __dir__. '/vendor/autoload.php';

$ connection = 새 phpamqplib \ connection \ amqpstreamConnection (
    'Localhost', 5672, '게스트', '게스트'
);

$ 채널 = $ connection-> 채널 ();

메시지 대기열을 만듭니다

RabbitMQ를 사용할 때는 먼저 메시지 저장을위한 대기열을 만들어야합니다. 다음 코드는 PHP에서 대기열을 만드는 방법을 보여줍니다.
$ queuename = 'my_queue'; // 대기열 이름 $ 채널-> queue_declare ($ queueName, false, true, false, false);

메시지를 보내십시오

다음 코드로 작성된 큐에 메시지를 보낼 수 있습니다.
$ msg = 새로운 phpamqplib \ message \ amqpmessage ( 'hello rabbitmq!');
$ 채널-> basic_publish ($ msg, '', $ queuename);

메시지를 받고 확인하십시오

소비자를 통해 메시지 수신이 수행됩니다. 소비자의 샘플 코드는 다음과 같습니다.
$ Callback = function ($ msg) {
    echo '수신 메시지 :'. $ msg-> 바디. "\N";
    $ msg-> delivery_info [ 'Channel']-> Basic_ack ($ msg-> vevelip_info [ 'delivery_tag']);
};

$ channel-> basic_consume ($ queueName, '', false, true, false, false, $ 콜백);

while (count ($ 채널-> 콜백)) {
    $ 채널-> 대기 ();
}

이 코드에서는 메시지를 수신하고 처리 할 콜백 함수를 만듭니다. 메시지를 처리 ​​한 후 Basic_ack 메소드는 메시지가 성공적으로 처리되었는지 확인하는 데 사용되므로 소비자가 실패하더라도 메시지가 손실되지 않습니다.

연결을 닫으십시오

메시징을 완료 한 후 RabbitMQ와의 연결을 닫는 것을 잊지 마십시오.
$ 채널-> close ();
$ connection-> close ();

요약

PHP를 RabbitMQ와 결합하여 신뢰할 수있는 메시징 메커니즘을 쉽게 구현할 수 있습니다. 이 기사는 RabbitMQ 및 AMQP 확장을 설치하는 방법을 설명하고 대기열 생성에 PHP를 사용하는 방법, 메시지 보내기 및 수신 방법을 자세히 보여줍니다. 이 기사가 RabbitMQ를 이해하고 사용하여 응용 프로그램의 신뢰성을 향상시키는 데 도움이되기를 바랍니다.