【问题标题】:How to implement business logic in Faye? RailsFaye中如何实现业务逻辑?导轨
【发布时间】:2012-08-29 07:51:15
【问题描述】:

我在瘦服务器上有 Rack Faye 应用程序,我对每个 faye 客户端握手/订阅/断开连接都有一些逻辑。

这个逻辑需要在数据库中存储数据,进行一些计算并将消息发布回一些通道。

应该在哪里以及如何实现这些东西以避免阻塞主 Faye 线程与扩展?

【问题讨论】:

    标签: ruby-on-rails ruby rack faye


    【解决方案1】:

    Faye 的作者在这里。取决于您正在与之交谈的数据库,但通常您应该使用非阻塞(即基于 EventMachine 的 TCP 堆栈)数据库客户端。这意味着扩展将快速返回(假设您没有等待 DB 调用的结果来影响传入/传出消息),因此 Faye 可以在 DB 调用正在进行时继续处理消息。

    【讨论】:

    • 非常感谢 Faye 的回答。 DB 通常是 Postgres。你的意思是像这里描述的那样使用 EventMachine faye.jcoglan.com/ruby/clients.html ?那是唯一的选择吗?我发现的唯一问题是我无法订阅 '/meta/*' 频道并且 => 无法完全控制连接的客户端。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-09
    • 2011-06-01
    • 2012-01-12
    • 2015-11-07
    相关资源
    最近更新 更多