AP4R异步消息模块

联合创作 · 2023-10-01 03:12

 

AP4R是Asynchronous Processing for Ruby的缩写,意即“Ruby的异步处理”。该项目是一个异步可靠消息处理的实现,提供消息队列和消息分派的功能。

目前已经能支持:

 

  1. 不管业务逻辑是非同步调用还是同步调用的,都可以以简单的Web应用或者Ruby代码的形式实现;
  2. RBMS(MySQL)或者基于文件的消息持久化能力;
  3. 支持在单个或者多个服务器上跨多个AP4R进程的负载平衡;
  4. 对以下多个协议的支持:XML-RPC、SOAP和HTTP POST等等。

 

要将AP4R整合进Rails,典型流程如下:

  1. 客户端(如Web浏览器)向Web服务器(Apache和Lighttpd等)发送请求;(
  2. Rails应用通过mod_proxy或者其它被同步地在mongrel上执行;
  3. Rails应用通过AP4R的API发送消息,并可以在随后立刻响应给客户端;
  4. AP4R将消息放入队列,并且异步地将其请求到Web服务器;
  5. 异步的业务逻辑(以常见的Rails Action的形式实现)被执行。
浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报