asp.net – NServiceBus在Web / MVC4 SQL架构中有用吗?
鉴于Web是一种非常单向的同步架构,使用MVC4的启用NSB的Web应用程序是否有任何好处?
我喜欢NSB带来的容错性和易开发性,但由于该技术都是关于单向异步消息传递,我如何围绕它设计我的应用程序,使用户不会(通常)注意到他们的回发发生时命令没有完成?在设计我的UI以自然适应NServiceBus的曲率时,我应该采用什么样的范例? 实际上,似乎NSB在网站和它的SQL存储之间是不必要的复杂性,因为用户总是认为“工作”是在他们的浏览器完成刷新时完成的.我在这方面错了吗? 编辑:我已经看到其他解决方案,其中每个命令处理程序在NSB服务完成工作时发布事件,并且ASP.NET项目上的事件处理程序将创建“存根文件”,启用Java脚本的页面轮询表示操作已完成.这是弥合单向同步和异步平台之间差距的唯一方法吗? 解决方法
NServiceBus非常适合任何Web前端.您只需要了解异步消息处理如何影响您的UI.在大多数情况下,可以简单地向用户指示该请求已被接受并将被处理.但在其他情况下,您可能需要放弃最终的一致性以立即保持一致.
例如,对于用户注册,我通常检查用户名的可用性,然后立即注册用户,但我发送命令通过电子邮件发送激活消息,以便用户不必等待.用户最终将收到他们的电子邮件.因此,将显示一条消息,指示将发送电子邮件,并且即使邮件只能在5分钟内发送,也需要单击激活链接. 另一个例子是用户可以将各种文档格式转换为TIFF的应用程序.将发送请求,并且Web前端将轮询以等待转换结果,然后显示转换后的页面. 因此,它会影响UI / UX的工作方式.它绝对有用,在某些情况下会让你的生活变得更轻松. 在我的情况下,我使用了我的FOSS Shuttle Service Bus:http://shuttle.codeplex.com/ —但无论如何这些概念都适用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET MVC“Donut caching”和TempData
- asp.net-mvc-2 – asp.net-mvc2 – 不使用Model的强类型助手
- asp.net-mvc-3 – 在html标签中添加html输入
- 如何强制编译ASP.NET MVC视图?
- object – 经典ASP – 何时关闭记录集
- asp.net-mvc – MVC:创建应用程序基本URL链接的最简单方法
- asp.net-web-api – 根据Web API请求设置JSON CamelCase
- asp.net-mvc – 多租户Razor页面
- asp.net-mvc – 为什么Visual Studio崩溃打开ASPX与MVC RC1
- asp.net – 如何阻止IIS解码URL
- asp.net-mvc-4 – 带有附加属性的ScriptBundle
- asp.net-mvc – 支持RavenDB的MVC4的会员系统
- asp.net-mvc-3 – 实体框架乐观并发异常未发生
- asp.net-mvc – 不引人注意的MVC3验证组的复选框
- asp.net – 用于.NET(asp mvc)的快速,简单和轻松
- ASP.NET MVC 微信公共平台开发之验证消息的真实性
- asp.net – Razor 3有什么新功能?
- 嵌套的ASP.NET’应用程序’在IIS内继承父配置值?
- asp.net – 在App_Start中编辑MiniProfiler.cs后
- asp.net-web-api – ASP.NET Web API – 404删除