RabbitMQ: Łączenie się z RabbitMQ za pomocą PHP

Ta dokumentacja jest częścią przewodnika Pierwsze kroki. Pełny przewodnik znajdziesz tutaj: Jak korzystać ze Stackhero dla RabbitMQ.

Jeśli pracujesz z PHP, możesz użyć biblioteki php-amqplib do połączenia z instancją RabbitMQ. Ponieważ Stackhero korzysta z szyfrowania TLS (SSL), zalecane jest użycie AMQPSSLConnection:

use PhpAmqpLib\Connection\AMQPSSLConnection;

$connection = new AMQPSSLConnection(
  '<XXXXXX>.stackhero-network.com',
  <AMQP_PORT_TLS>,
  'admin',
  '<PASSWORD>',
  '/',
  array()
);

/**
 * @param \PhpAmqpLib\Connection\AbstractConnection $connection
 */
function shutdown($connection)
{
  $connection->close();
}

register_shutdown_function('shutdown', $connection);

Czasami połączenie TLS może wymagać certyfikatu urzędu certyfikacji (CA). Wiele systemów już go posiada, ale w razie potrzeby możesz pobrać go ręcznie. Oto jak to zrobić:

  1. Pobierz certyfikat z https://letsencrypt.org/certs/isrgrootx1.pem i zapisz go na swoim serwerze.
  2. Następnie połącz się z RabbitMQ w PHP, korzystając z pobranego certyfikatu:
$sslOptions = array(
  'cafile' => realpath(__DIR__ . '/isrgrootx1.pem'),
);

$connection = new AMQPSSLConnection(
  '<XXXXXX>.stackhero-network.com',
  <AMQP_PORT_TLS>,
  'admin',
  '<PASSWORD>',
  '/',
  $sslOptions
);