的NodeJS
SignalR
Using PushStreamContent (Web API) and something like KnockoutJS
虽然是SignalR is deemed to make it to asp.net 4.5,但我对NodeJs within MS(特别是Azure)非常感兴趣.任何人都可以了解差异(至少NodeJs和SignalR)?
解决方法
但是,.NET 4.5& C中出现的C#5.0. Visual Studio 2012(以及Mono 2.11)允许您通过使用新的async& amp编写/修改代码以实现异步.等待关键字.
如果您已经是.NET开发人员,那么C#async& await和SignalR非常易于上传,学习和运行,使您可以构建高度可扩展的高性能系统.
Node.js使您能够用JavaScript编写代码并将其托管在应用服务器中.
Node目前受到了很多关注,但是如果你来自.NET开发背景,那么在迁移到服务器上的JavaScript时,值得注意的一些事情可能会让你感到惊讶/烦恼:
> JavaScript是一种非常强大且极其灵活的动态类型语言.然而,在你学会了许多缺陷以及如何克服它们之前,这种灵活性可能是非常危险和有问题的.如果您必须执行JavaScript代码,请考虑使用TypeScript和CoffeeScript等语言编写源代码,这些语言可以编译为JavaScript,但可以避免许多JavaScript的危险.
>虽然node提供了出色的异步调度功能,但其代码执行性能可能比执行C#慢得多.如果您的代码很少/不处理数据,您可能不会注意到这个问题.但是,如果您的代码进行了大量的数据处理/计算/分析等,您可能会发现节点的JavaScript性能不可接受.
>节点是单线程的!如果您的代码必须执行一些繁重的处理,例如,对大量数据执行复杂的计算,它将阻止单个节点实例在每个处理操作完成之前提供其他传入请求.因此,您需要计划启用node clustering(当前是实验性功能),或者,如果您在Windows上托管节点,则使用IIS& IISNode] @L_403_7@使用(真棒)IIS&处理节点实例管理. Windows进程激活基础结构.>与典型的.NET开发人员的调试经验相比,在节点下运行的调试代码现在是一个缓慢而繁琐的过程.为此,您需要使用node-inspector和Chrome Web浏览器来调试代码,但体验很差:断点不会在运行时保留;不支持条件断点;显示的调用栈很浅;等等