php-amqplib已经这么好用了,为什么还要去做优化?
由于php-amqplib是纯php写的扩展,在执行效率上与C扩展相比,还是存在比较大的不足。实际并发测试下,使用php-amqplib压入消息队列也会成为瓶颈。
安装客户端rabbitmq-c:
wget https://codeload.github.com/alanxz/rabbitmq-c/zip/master
unzip master
cd rabbitmq-c-master
mkdir build && cd build
cmake .. // 如提示cmke不存在则先yum/apt安装cmake
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c/0.9 .. // 指定安装目录
cmake --build . --target install // 注意不要漏掉点 '.'
安装php-amqp
这里推荐使用yum或apt进行安装:apt-get install php-amqp
修改php.ini
增加extension:amqp.so。注意需要修改cli与fpm下的php.ini,且fpm需要重启。