【问题标题】:.net c# zeromq server with one worker, send object from worker to frontend.net c# zeromq 服务器与一个工作人员,将对象从工作人员发送到前端
【发布时间】:2023-03-11 07:17:02
【问题描述】:

我是零 Mq 的新手。 我正在尝试实现异步 request/reply 模式。

我有 1 个服务器和 N 个客户端。

当服务器收到来自客户端的请求时,它会将这个请求传递给一个工作人员,并等待工作人员处理完请求。 然后工作人员将回复发送回前端套接字,然后将其发送给客户端。

问题在于socket.Send/SendMessage 方法确实需要一个byte[],它确实需要在工作人员中序列化我的回复,然后在前端将其反序列化。

还有其他方法,我不需要序列化/反序列化? 我想使用对对象本身的引用,这可能吗?

感谢您的支持。

【问题讨论】:

    标签: c# .net sockets serialization zeromq


    【解决方案1】:

    不能这样做。此外,您不想这样做,如果您使用的是 ZeroMQ,那么您的工作级别要低得多,并且可能正在寻求速度和对通信的更多控制。

    如果你真的想要这个,我想你正在寻找远程处理的概念。请注意,即使在这里,您实际上也没有使用服务器引用,这只是一种让您感觉相同的错觉,但它涉及大量开销,这与您想要使用 ZeroMQ 不符。

    NET-Remoting-with-an-easy-example

    .Net Remoting versus WCF

    【讨论】:

    • 我已经通过将字节缓冲区从后端发送到前端来解决它。
    • 是的,在这种情况下,我知道 ZeroMQ 建议使用 inproc,但实际上如果它在同一个进程上,如果您可以访问此版本的框架,使用 BlockingCollection 会更快且非常容易使用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-05
    • 2015-09-02
    • 1970-01-01
    • 2013-05-18
    相关资源
    最近更新 更多