Comment utiliser RabbitMq dans thinkPHP5
Comment utiliser Rabbitmq avec thinkPHP5 ?
Après avoir installé l'extension lapinmq de tp5, ajoutez le fichier lapinmq.php au fichier du répertoire racine du projet pour démarrer lapinmq.
<?php define('APP_PATH', __DIR__ . '/application/'); define('BIND_MODULE','rabbitmq/Client'); // 加载框架引导文件 require __DIR__ . '/thinkphp/start.php';
Générateur
private function queueEvent($message) { // error_log("\n******" . date("His") . "********\n" . print_r($message, 1) . "\n*************\n", 3, 'messag_event.log'); dump($message); //设置你的连接 $conn_args = array('host' => 'ip', 'port' => '5672', 'login' => 'ymq', 'password' => '123456', 'vhost'=>'/'); $content = $message; //创建连接和channel $conn = new \AMQPConnection($conn_args); if (!$conn->connect()) { die("Cannot connect to the broker!\n"); } $channel = new \AMQPChannel($conn); //创建交换机 $e_name = 'MQTT_device_event'; //交换机名 $ex = new \AMQPExchange($channel); $ex->setName($e_name); // $ex->setType(AMQP_EX_TYPE_TOPIC); //direct类型 $ex->setType(AMQP_EX_TYPE_DIRECT); //direct类型 $ex->setFlags(AMQP_DURABLE); //持久化 $ex->declareExchange(); }
Recommandations associées : "Tutoriel ThinkPHP"
Exécuter le répertoire php, exécuter le producteur
Consommateur
public function index() { //连接RabbitMQ $conn_args = array('host' => 'ip', 'port' => '5672', 'login' => 'ymq', 'password' => '123456', 'vhost' => '/'); $e_name = 'MQTT_device_event'; //交换机名 $q_name = 'q_event'; //队列名 $k_route = 'key_event'; //路由key //创建连接和channel $conn = new \AMQPConnection($conn_args); if (!$conn->connect()) { die("Cannot connect to the broker!\n"); } $channel = new \AMQPChannel($conn); //创建交换机 $ex = new \AMQPExchange($channel); $ex->setName($e_name); $ex->setType(AMQP_EX_TYPE_DIRECT); //direct类型 $ex->setFlags(AMQP_DURABLE); //持久化 $ex->declareExchange(); //创建队列 $q = new \AMQPQueue($channel); $q->setName($q_name); $q->setFlags(AMQP_DURABLE); //持久化 $q->declareQueue(); //最好队列object在这里declare()下,否则如果是新的queue会报错 //绑定交换机与队列,并指定路由键,可以多个路由键 $q->bind($e_name, $k_route); //$q->bind($e_name, 'key_33'); //阻塞模式接收消息 echo "Message:\n"; while(True){ $q->consume(function($envelope, $queue) { $msg = $envelope->getBody(); //处理数据 echo $msg . PHP_EOL; //处理消息 $queue->ack($envelope->getDeliveryTag()); //手动发送ACK应答 }); //$q->consume('processMessage', AMQP_AUTOACK); //自动ACK应答 } $conn->disconnect(); }
exécute la commande php Rabbitmq
pour démarrer puis
vérifie si la file d'attente est consommée
Connectez-vous à http://127.0.0.115672/ # /adresse des files d'attente
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment créer une application de messagerie fiable avec React et RabbitMQ Introduction : Les applications modernes doivent prendre en charge une messagerie fiable pour obtenir des fonctionnalités telles que les mises à jour en temps réel et la synchronisation des données. React est une bibliothèque JavaScript populaire pour créer des interfaces utilisateur, tandis que RabbitMQ est un middleware de messagerie fiable. Cet article explique comment combiner React et RabbitMQ pour créer une application de messagerie fiable et fournit des exemples de code spécifiques. Présentation de RabbitMQ :

Comment utiliser RabbitMQ pour implémenter le traitement distribué des messages en PHP Introduction : Dans le développement d'applications à grande échelle, les systèmes distribués sont devenus une exigence courante. Le traitement distribué des messages est un modèle qui améliore l'efficacité et la fiabilité du système en distribuant les tâches à plusieurs nœuds de traitement. RabbitMQ est un système de mise en file d'attente de messages open source et fiable qui utilise le protocole AMQP pour implémenter la livraison et le traitement des messages. Dans cet article, nous expliquerons comment utiliser RabbitMQ en PHP pour la distribution

Comment s'assurer que les messages ne sont pas perdus. Le chemin de livraison des messages Rabbitmq producteur->switch->file d'attente->consommateur est généralement divisé en trois étapes. 1. Le producteur garantit la fiabilité de la livraison des messages. 2.Les messages internes de MQ ne sont pas perdus. 3. La consommation des consommateurs est réussie. Qu'est-ce que la fiabilité de la livraison des messages ? En termes simples, cela signifie que les messages sont envoyés à 100 % à la file d'attente des messages. Nous pouvons activer confirmCallback. Une fois que le producteur a envoyé le message, mq donnera au producteur un accusé de réception. Sur la base de l'accusé de réception, le producteur peut confirmer si le message est envoyé à mq. Activez confirmCallback et modifiez le fichier de configuration. #NONE : désactiver. le mode de confirmation de libération, qui est la valeur par défaut, CORRÉLÉ :

À mesure que les applications modernes deviennent de plus en plus complexes, la messagerie est devenue un outil puissant. Dans ce domaine, RabbitMQ est devenu un courtier de messages très populaire qui peut être utilisé pour transmettre des messages entre différentes applications. Dans cet article, nous explorerons comment utiliser RabbitMQ en langage Go. Ce guide couvrira les éléments suivants : Introduction à RabbitMQ Installation de RabbitMQ Concepts de base de RabbitMQ Premiers pas avec RabbitMQ dans Go RabbitMQ et Go

Introduction à la solution de synchronisation des données en temps réel entre Golang et RabbitMQ : À l'ère actuelle, avec la popularité d'Internet et la croissance explosive du volume de données, la synchronisation des données en temps réel est devenue de plus en plus importante. Afin de résoudre les problèmes de transmission asynchrone et de synchronisation des données, de nombreuses entreprises ont commencé à utiliser des files d'attente de messages pour réaliser une synchronisation des données en temps réel. Cet article présentera une solution de synchronisation de données en temps réel basée sur Golang et RabbitMQ et fournira des exemples de code spécifiques. 1. Qu'est-ce que RabbitMQ ? Rabbin

Aujourd'hui, de plus en plus d'entreprises commencent à adopter le modèle d'architecture de microservices, et dans cette architecture, les files d'attente de messages sont devenues une méthode de communication importante, parmi laquelle RabbitMQ est largement utilisé. Dans le langage Go, go-zero est un framework qui a émergé ces dernières années. Il fournit de nombreux outils et méthodes pratiques pour permettre aux développeurs d'utiliser plus facilement les files d'attente de messages. Ci-dessous, nous présenterons go-zero basé sur des applications pratiques et leur utilisation. et pratique d'application de RabbitMQ. 1.RabbitMQ PrésentationLapin

GolangRabbitMQ : La conception architecturale et la mise en œuvre d'un système de file d'attente de messages hautement disponible nécessitent des exemples de code spécifiques Introduction : Avec le développement continu de la technologie Internet et sa large application, les files d'attente de messages sont devenues un élément indispensable des systèmes logiciels modernes. En tant qu'outil permettant de mettre en œuvre le découplage, la communication asynchrone, le traitement tolérant aux pannes et d'autres fonctions, la file d'attente de messages offre une haute disponibilité et une prise en charge de l'évolutivité pour les systèmes distribués. En tant que langage de programmation efficace et concis, Golang est largement utilisé pour créer des systèmes à haute concurrence et hautes performances.

Avec l’avènement de l’ère Internet, les systèmes de file d’attente de messages sont devenus de plus en plus importants. Il permet des opérations asynchrones entre différentes applications, réduit le couplage et améliore l'évolutivité, améliorant ainsi les performances et l'expérience utilisateur de l'ensemble du système. Dans le système de file d'attente de messages, RabbitMQ est un puissant logiciel de file d'attente de messages open source. Il prend en charge une variété de protocoles de messages et est largement utilisé dans les transactions financières, le commerce électronique, les jeux en ligne et d'autres domaines. Dans les applications pratiques, il est souvent nécessaire d'intégrer RabbitMQ à d'autres systèmes. Cet article explique comment utiliser sw
