我正在学习Erlang,并且我具有良好的Python背景。我在项目中使用RabbitMQ和Celery。
虽然Erlang具有非常强大的消息传递和并发功能,但是将RabbitMQ与Erlang一起使用有什么好处?我错过了重点吗?为什么我不应该依赖Erlang的本机功能,而不是在项目环境中增加另一层复杂性?
如果您正在使用erlang进行erlang通讯,则不需要Rabbitmq之类的东西。
如果您需要以崩溃弹性为形式的鲁棒性,知道某个作业是否已开始或完成,能够让后端进程停止运行,而不必担心丢失工作等,那么rabbitmq就很有意义。
另外,如果要在erlang和ruby或node.js,C#,C ++,Python等多种语言之间进行通信,rabbitmq可以使此操作变得容易。
使用rabbitmq,您可以使用代理与无代理的分布式系统获得解耦的分布式系统(https://www.rabbitmq.com/blog/2010/09/22/broker-vs-brokerless/)
始终,这不是“更好”的事情。但是另一回事。经纪人和无经纪人都是有效和有用的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句