您好,欢迎访问一九零五行业门户网

swoole和rabbitmq的区别

rabbitmq是实现了高级消息队列协议(amqp)的开源消息代理软件(亦称面向消息的中间件)。
rabbitmq服务器是用erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。                   (推荐学习: swoole视频教程)
rabbitmq是一套开源(mpl)的消息队列服务软件,是由 lshift 提供的一个 advanced message queuing protocol (amqp) 的开源实现,由以高性能、健壮以及可伸缩性出名的 erlang 写成。
主要特性
可伸缩性:集群服务
消息持久化:从内存持久化消息到硬盘,再从硬盘加载到内存
swoole是一个php的c扩展,可用来开发php的高性能高并发tcp/udp server。
swoole的网络io部分基于epoll/kqueue事件循环,是全异步非阻塞的。 业务逻辑部分使用多进程同步阻塞方式来运行。这样既保证了server能够应对高并发和大量tcp连接。又保证业务代码仍然可以简单的编写。
swoole1.6.2之后增加了异步支持,应用程序也可以像node.js一样写异步回调。
swoole与node.js相比更强大,支持同步/异步、多进程并行,swoole提供了进程生命周期管理、内存保护机制,开发者无需考虑底层细节,专注于业务逻辑和功能的开发。
swoole底层内置了异步非阻塞、多线程的网络io服务器。php程序员仅需处理事件回调即可,无需关心底层。与nginx/tornado/node.js等全异步的框架不同,swoole既支持全异步,也支持同步。
swoole从2.0版本开始支持了内置协程,可以使用完全同步的代码实现异步程序。php代码无需额外增加任何关键词,底层自动进行协程调度,实现异步。
swoole是开源免费的自由软件,授权协议是apache2.0。企业和开发者均可免费使用swoole的代码,并且在swoole之上所作的修改无需开源。
以上就是swoole和rabbitmq的区别的详细内容。
其它类似信息

推荐信息