* Date: 2019/9/9 0009 * Time: 14:54 */ namespace common\components\rabbitmq\consumer; use mikemadisonweb\rabbitmq\components\ConsumerInterface; use PhpAmqpLib\Message\AMQPMessage; class commonConsumer implements ConsumerInterface { /** * @param AMQPMessage $msg * @return bool */ public function execute(AMQPMessage $msg) { $data = unserialize($msg->body); print_r($data); print_r('PrintMsgConsumer done! '); if ($data['status'] == 200) { print_r('suceess '); return ConsumerInterface::MSG_ACK; } elseif ($data['status'] == 500) { sleep(5); print_r('faile '); return ConsumerInterface::MSG_REQUEUE; } /** * ConsumerInterface::MSG_ACK - Acknowledge message (mark as processed) and drop it from the queue * ConsumerInterface::MSG_REJECT - Reject and drop message from the queue * ConsumerInterface::MSG_REQUEUE - Reject and requeue message in RabbitMQ */ } }