【问题标题】:c# alternative to socket.io for node.js [closed]c# node.js的socket.io的替代品[关闭]
【发布时间】:2013-11-04 01:44:36
【问题描述】:

C# 是否有类似 socket.io (node.js) 的东西?我需要它的服务器版本。

感谢您的帮助!

【问题讨论】:

    标签: c# socket.io


    【解决方案1】:

    信号R

    .NET 的异步信号库,可帮助构建实时、多用户交互式 Web 应用程序。

    https://github.com/SignalR/SignalR

    你可以在这里看到它的一个活生生的例子http://jabbr.net/

    您将需要 IIS 8.0 来获取 Web 套接字,它在 IIS 7 上使用长轮询。

    我认为他们可能正在使用 https://github.com/davidfowl/Fleckhttps://github.com/davidfowl/SignalR.Fleck 来展示如何将 Fleck Web 套接字服务器与 SignalR 一起使用

    【讨论】:

      【解决方案2】:

      .NET 有多种方法可以实现类似于 node.js 的 100% 异步设计。

      参见SocketBeginSend/EndSend 和更高性能的SendAsync,或StreamBeginRead/BeginWrite 方法。这些都与 node.js 非常相似。

      C# 5.0 引入了一种新的异步设计,它具有语言支持,比上面的那些更容易使用。您可以在Async CTP 中试用它的测试版。

      【讨论】:

      • 委托和新的 C# Async 与我提到的框架不同。另一方面,这些框架在 .NET 中使用单个非阻塞线程,每个客户端由单独的线程处理,这是根本区别。
      • 糟糕,我忘记了 node.js 使用单线程。但是,.NET 不会在单独的线程上处理每个客户端——它使用线程池并且从不阻塞。如果您在访问全局状态时锁定,您应该没问题。此外,C# Async CTP 使用您在其中启动 I/O 的任何执行上下文——如果您的上下文是单线程的,它只会将那个单线程用于您的所有连接。
      【解决方案3】:

      刚刚看到来自 mix11 的视频,他们在视频中谈到了 Manos de Mono。它是一个仿照 tornadoweb 的 C# 框架,灵感来自 node.js 等框架。

      https://github.com/jacksonh/manos

      【讨论】:

        【解决方案4】:

        还有另一个库叫做 XSockets

        http://xsockets.net/

        它们还包括针对未实现 WebSocket 协议的浏览器的后备功能,通过 Flash 后备

        【讨论】:

          【解决方案5】:

          这刚刚发布,文档和示例正在路上!

          https://github.com/kayak/kayak https://groups.google.com/forum/#!topic/kayak-http/LXS_xh0qurM

          您可能还想查看 http://superwebsocket.codeplex.com/

          我不确定它是使用单线程还是线程池。但只有当您想在任何时候拥有 1000 个连接时,这才会成为问题。

          【讨论】:

            【解决方案6】:

            我认为 .NET 中没有任何框架支持事件 IO,例如 node.js 或 ruby​​ 的 EventMachine 或 python twisted :-(。

            【讨论】:

            • @kazimanzurrashid : Van Coding 要求的是 socket.io 的等价物,而不是 node.js...
            猜你喜欢
            • 2012-09-14
            • 2011-03-14
            • 2016-08-27
            • 2010-09-20
            • 2014-08-23
            • 2011-08-21
            • 2012-09-09
            • 2011-11-30
            • 2010-09-13
            相关资源
            最近更新 更多