- Rabbitmq是依赖于erlang语言的,必须先装erlang;
- 最重要的一点:Rabbitmq的版本与erlang的版本是有对应关系的,一开始装的时候版本对应没有搞对结果遇到nodedown的问题,在网上搜的结果是去从C:/windows/下复制.erlang.cookie到用户文件夹下,结果C:/windows/下根本就没有这个文件!
- 后来一步步按照官方文档走,终于装成功了,官方文档请查看http://www.rabbitmq.com/install-windows-manual.html
总结:搭建环境之类的操作一定按照官方manual来,不要主观臆测,一知半解的情况下就去做,可能会踩到很多坑。不要嫌看英文资料麻烦,英文资料实际上可能才是最正确的资料,很多中文资料都是二手的,有可能会把你带坑里去。
续:
搭好rabbitmq之后,用python的celery跑后台任务,rabbitmq作broker,redis作backend,结果任务执行完成后总是获取不到结果,result.ready()总是返回False。后经查阅资料后解决,是windows版的celery的问题,windows下使用celery命令跑worker时需要加上--pool=solo或者-P threads,完整命令为:
celery -A tasks worker --loglevel=info -P threads
参考资料如下:
https://www.v2ex.com/t/177589
https://github.com/celery/celery/issues/2146