【问题标题】:socket.io and .Net socket serversocket.io 和 .Net 套接字服务器
【发布时间】:2011-05-07 03:54:39
【问题描述】:

如果这个问题听起来很愚蠢,请原谅,但我不得不问。有没有用 C# 编写的 Node.js 的服务器端替代方案?我需要一个客户端框架来充分利用 Web Sockets,但 AFAIK IE 不支持 Web Sockets,也不会支持它的下一个版本。 socket.io 如果可用则使用 Web Sockets,如果不可用则回退到 BOSH。因此,我将尝试连接到在 .Net Framework 上运行的套接字服务器。

我有什么选择?

【问题讨论】:

  • 好的,我写了自己的套接字服务器,它就像一个魅力。
  • 如果你用 github 项目的链接回答你自己的问题,我保证会支持你的答案;)

标签: comet websocket


【解决方案1】:

请原谅我从死里复活这个线程 - 我和我的朋友刚刚发布了一个 C# 的服务器端 websocket 服务器:https://github.com/Olivine-Labs/Alchemy-Websockets

它速度快、可扩展,并且没有刻意做 socket.io 所做的一切:它提供 websockets 和 flash 回退,使其非常精简和高效。我看到您已经完成了自己的工作,但请检查一下;并希望它能帮助其他人。

【讨论】:

    【解决方案2】:

    可能是一个老问题的答案,但我会写在这里,以防其他人使用搜索引擎找到这个问题。看看 SignalR (http://signalr.net/) 的抽象。有关 SignalR 是什么的精彩帖子,请阅读 Scott Hanselman 的帖子http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx

    【讨论】:

    • SignalR 不使用 Web Sockets,因为它运行在 .net 和服务器端不支持 Web Sockets 的 windows 之上。 SignalR 将在所有浏览器上使用 serverSideEvents,IE 除外,IE 将使用 Forever-Frame。
    • @RegisteredUser 这并不完全正确。如果客户端和服务器都支持,SignalR 将使用 WebSockets。 SignalR 支持多种托管选项,但目前使用最广泛的当然是 IIS。因此,如果 SignalR 主机支持 WebSocket,则 SignalR 将支持 WebSocket。 Windows Server 8 上的 IIS 支持 WebSocket。编写本文时的当前版本(以及几个版本)使用以下列表中客户端和服务器上可用的最佳传输方法:WebSockets、服务器发送事件、永久帧和最后的长轮询。
    猜你喜欢
    • 1970-01-01
    • 2011-11-21
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 2021-08-30
    • 2017-02-23
    • 1970-01-01
    相关资源
    最近更新 更多