使用 SignalR 进行实时 ASP.NET

非常简单的适用于 ASP.NET 的实时 Web

开始 阅读文档

Windows、Linux 和 macOS 上均支持

SignalR 助你让 ASP.NET 应用成真

如今的新式应用程序有望在不点击刷新按钮的情况下提供最新信息。请为仪表板、地图、游戏等添加实时功能。

什么是实时功能? 它可让服务器端代码在连接的客户机上实时推送内容。

ASP.NET 框架的一部分

可以使用 C# 代码编写 SignalR 中心,并将其与页面和 API 一起添加到 ASP.NET 应用。

简单的编程模型与其他 ASP.NET 功能 (如依赖项注入、身份验证、授权和可伸缩性) 无缝集成。

可以使用 ASP.NET 和 SignalR 执行哪些操作?

虽然聊天通常被用作示例,但你可以做更多的事情。每当用户刷新网页以查看新数据时,或者该网页实施 Ajax 长轮询以检索新数据时,它都是使用 SignalR 的候选者。

SignalR 还支持需要从服务器进行高频更新的全新类型的应用,例如实时游戏。

开放源代码,开放协议

SignalR 在 GitHub 上是开源的,就像 .NET 的其余部分一样。除了源代码之外,中心和客户端之间通信的协议规范也是开放的。

GitHub 上的 SignalR

从任何位置连接

借助 JavaScript、.NET (C#、F# 和 Visual Basic)、Java 和 Swift 的客户端 SDK,你可以连接到 SignalR 中心并在几乎任何平台(包括 web、移动、桌面、游戏)上开始接收实时消息。

SignalR 在可用时将使用 WebSocket,并且在其不可用时正常回退到其他技术,同时应用程序代码保持不变。

SignalR 速度快且可缩放

与 ASP.NET 的其余部分一样,SignalR 是为实现高性能而构建的,也是市面上最快的实时框架之一。

跨服务器横向扩展,内置支持使用 Redis、SQL Server 或Azure 服务总线来协调每个实例之间的消息。

Azure SignalR 服务

你可以自己托管 SignalR 应用,也可以使用 Azure SignalR 服务来实现完全托管的平台。Azure SignalR 服务可处理性能、可伸缩性和可用性等问题,并具有 99.9% 的服务级别协议。

了解 Azure SignalR 服务

准备好开始使用了吗?

分步教程将帮助你在计算机上运行 ASP.NET 与 SignalR。

开始