2010-06-11 62 views

回答

18

我打算使用ServiceStack我的系统上,我发现它非常酷,在路上非常可观它实现了一些模式,我喜欢它的架构

有你想要的服务方式的差异.. 然而,框架可以用来为:(很显然,这取决于情况)

  • Agatha-rrsl它实现了一个rrsl模式,它允许在ServerAndClient在同一进程或distribuited环境如使用服务。它使用外部服务的Web应用程序(阿加莎使用WCF外部服务)
  • OpenRasta一个强大的框架,可以用来建立一个完整的应用程序或干脆REST服务
  • NServiceBus它实现了一个完整的服务总线架构,并且可以使用在同一过程中或在其中是最适合该框架
  • MassTransit类似NServiceBus(我个人更喜欢NServiceBUs)一distribuited方式ServerAndClient
  • SimpleServiceBus类似NServiceBus但更简单,冷静
  • RhinoServiceBus,NServiceBus上的一种叉非常非常酷

理解像Agatha这样的服务框架与像NServiceBus这样的服务总线之间的区别是非常重要的。好点可能是伟大的戴维奥比昂博客上张贴 说法http://davybrion.com/blog/2010/01/agatha-vs-nservicebus/

也许,如果我还记得别的东西,我将更新后 希望它可以帮助

+0

HTTP ://trac.caffeine-it.com/openrasta找不到,对我而言404错误 – Kiquenet 2013-11-11 11:24:10

+0

@Kiquenet链接固定! – Hoghweed 2013-11-13 09:57:21

21

我很高兴听到你正在考虑ServiceStack :)这是一个在过去几年中一直在开发的框架,它源于.NET现有的.asmx和WCF SOAP Web服务框架僵化所带来的挫折和摩擦。我发现没有任何现有的框架推广了遵循Martin Fowlers最佳实践的代码优先传统方法Data Transfer Object Pattern,我相信这些方法有助于开发定义明确,不那么健谈,可缓存和可重用的Web服务。

它的主要目标是:

  • 推广最佳实践C#开发 - 松耦合,可测试(端点/格式无关的)服务。
  • 最佳实践Web服务开发 - 您的Web服务合约是您可能制作的最重要的接口,因此它应该是代码优先,强类型和定义明确的。
  • 可重复使用的,模型驱动的体系结构 - 请注意,您的服务继承自可以在Message Queue服务中重新使用的[不可用的] IService [T]。跨平台 - 支持Windows(.NET)/ Linux/OSX(MONO)
  • 性能 - 运行时无反射且仅使用最快速。NET组件的所有功能
  • 可缓存性 - 缓存是高性能,可伸缩服务的重要组成部分,因此,对缓存进行细粒度控制,能够缓存最优结果(即gzipip回复)并且有一个variety of caching providers。请参阅Northwind example
+9

并且它不再是免费的... – Soren 2014-03-18 09:20:18

4

就以Nelibur,优势

  • 看看如下数据传输对象模式
  • 微小的,可重复使用的Web服务
  • 的WCF的全功率
  • 它是免费的
相关问题