EASYLT文档 > RabbitMQ框架 > 快速上手

框架简介

  • RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,亦称面向消息的中间件,可实现以下模式的消息队列业务,同时具有消息确认机制:simple/worker、fanout、routing、topic、dead。EASYLT对其进行高度封装,使开发变得更简单、可靠。
  • 环境配置

  • 请下载、安装RabbitMQ(版本Distro/Version为el/7)erlang(版本大于23.2小于24及Distro/Version为el/7),配置并启动RabbitMQ-server服务器。
  • 运行模式

    生产者
  •    model:生产者文件在model模型中创建时,view视图下文件(如AJAX请求)或外部系统调用API接口映射到model模型目录下的
       生产者文件时,进行消息生产。
  •    server:生产者文件在server服务中创建时,仅可通过CLI命令台运行,可配合Swoole的各种服务器、多进程实现内存常驻运行进行
       消息生产。
  • 消费者
  •    model:消费者文件仅simple/worker模式下可在model模型中创建,且消费模式必须为即刻模式,默认为等待模式,如需更改请
       在core/config目录下config_rabbitmq.php中配置。创建后,view视图下文件(如AJAX请求)或外部系统调用API接口映射到
       model模型目录下的消费者文件时,进行消息消费。
  •    server:消费者文件在server服务中创建时,仅可通过CLI命令台运行,可配合Swoole的各种服务器、多进程实现内存常驻运行进行
       消息消费。
  • 在server服务下运行RabbitMQ文件,当配置文件config_swoole.php中配置常量ASYNC_CO为开启异步协程时,运行RabbitMQ文件必须在容器中,即在如TCP等服务器或协程容器中(不含多进程容器,当放置多进程容器中也需包含服务器或协程容器),否则会发生冲突导致运行错误。
  • DB操作

  •    model模型下创建的生产者及simple/worker模式的消费者文件和model模型常规实体类一样支持Mysql的mysqli面向过程、ORM
       的DB操作及redis的原生DB操作。
  •    server服务下创建的生产者、消费者文件支持异步Mysql、异步Redis、同步Mysql、同步Redis的DB操作;生产者、消费者文件在
       如TCP服务器的TASK异步任务中仅支持同步Mysql、同步Redis。
  •    异步Mysql、异步Redis、同步Mysql、同步Redis具体操作请阅读Swoole框架相关文档。