BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

微软发布Azure SignalR Service的预览版本

| 作者 Martin Abbott 关注 3 他的粉丝 ,译者 张卫滨 关注 13 他的粉丝 发布于 2018年5月28日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

最近,微软在西雅图举办的年度Build开发者会议上发布了Azure SignalR Service的公开预览版本。SignalR之前就可以作为单独的ASP.NET库来下载,但现在它是第一次作为一个完整的托管服务来提供。

SignalR作为一个库已经开发了五年的时间了,它能够为Web应用提供实时体验,比如用于实时仪表盘。为了实现该特性,它能够从服务器端实时推送内容给连接的客户端。这个功能是通过WebSockets来提供的,但是在不支持WebSockets的场景下,它有备选方案,包括服务端事件(server-side events)、Forever Frame以及长轮询(long polling)。

如果直接部署SignalR组件的话,用户需要负责安全、加密、容量以及扩展性。对服务进行跨节点扩展是通过一个静态的backplane来实现的,这个backplane管理每个服务节点之间的连接。自行托管的SignalR需要创建和管理backplane,以便于提供系统扩展的基础设施,还需要包括提供支撑的库,如Azure Service Bus、Redis Cache或SQL Server。

Azure SignalR Service移除了自行托管实例的一些复杂性,直接提供了扩展和伸缩功能,不再需要提供自己的backplane了。另外,安全也是通过该服务的共享访问key来进行管理的。

与大多数Azure服务类似,该服务的实例可以通过Azure Portal进行创建。实例名需要保证全局唯一,你还需要选择Azure Subscription和 Resource Group来存储服务,并且要指定价格等级(tier)和region位置。

Azure SignalR Service目前在East US、Southeast Asia、West Europe、West US和West US 2这些region上提供了公开预览功能,支持两种定价等级。

在选择Basic等级时,最多可以选择10个扩展单元,它们决定了消息的数量以及一个实例可以支持的连接数。在公开预览中,不支持自动扩展。

SignalR只是支持实时Web应用开发的众多组件之一,其他组件还包括firehose.iosocket.io。在其他流行的JavaScript框架中直接支持了Firehose,比如Backbone.js和Ember.js,它还使用了RESTful设计原则,任意能够调用HTTP端点的客户端都能与之交互。Socket.IO用到了很多需要实时交互的应用程序之中,比如Trello、Zendesk和Microsoft Office。

Azure SignalR Service目前支持ASP.NET Core,提供了对JavaScript和.NET的客户端支持。该服务暴露了一个HTTP端点,允许其他的客户端调用该端点,实现与服务的直接交互。

David Fowler是Azure的首席软件架构师,也是SignalR库最初的架构师之一,在版本发布声明中描述了如何将当前的SignalR项目转换为使用新的服务:

如果你已经有基于SignalR的Web应用,那么你可以添加一个对Azure SignalR Service SDK的引用,配置连接字符串,然后使用services.AddSignalR().AddAzureSignalR()和app.UseAzureSignalR来连接服务。这样的话,你的应用就能开始使用该服务了。

声明继续说到,随着服务向正式版本演进,将会提供其他语言的SDK。

服务的Basic等级目前是每单元每小时0.0335美元,现在的定价页面为每个价格等级使用了不同的叫法,在门户中,Free被称为Dev/Test,而Basic被称为Standard。

查看英文原文Microsoft Announces Preview of Azure SignalR Service

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT