【问题标题】:Anyone have experience with ServiceStack or other .Net services framework? [closed]任何人都有使用 ServiceStack 或其他 .Net 服务框架的经验? [关闭]
【发布时间】:2011-03-02 20:46:07
【问题描述】:

我正在寻找将ServiceStack 用于 Web 应用程序的服务部分,而不是自己滚动。有人有使用它的经验吗?我应该考虑任何 C#/.Net 替代方案吗?

【问题讨论】:

    标签: c# asp.net wcf web-services soa


    【解决方案1】:

    很高兴听到您正在考虑 ServiceStack :),这是一个在过去几年中一直在开发的框架,源于 .NET 现有 .asmx 和 WCF 的僵化所造成的挫折和摩擦SOAP Web 服务框架。我发现现有的框架都没有推广遵循 Martin Fowlers 最佳实践 Data Transfer Object Pattern 的代码优先传统方法,我认为这有助于开发定义明确、不那么啰嗦、可缓存的方法和可重用的网络服务。

    它的主要目标是:

    • 促进最佳实践 C# 开发 - 松散耦合、可测试(与端点/格式无关)服务。
    • Web 服务开发最佳实践 - 您的 Web 服务合同是您可能创建的最重要的接口,因此它应该是代码优先、强类型和明确定义的。
    • 可重用、模型驱动的架构 - 请注意,您的服务继承自一个无依赖的 IService[of T],它也可以在 Message Queue 服务中重用。
    • 跨平台 - 支持 Windows (.NET) / Linux/OSX (MONO)
    • 性能 - 运行时无反射,所有功能仅使用最快的 .NET 组件
    • 可缓存性 - 缓存是高性能、可扩展服务的重要组成部分,因此有时对缓存进行细粒度控制很重要,能够缓存最佳结果(即压缩响应)并拥有 @ 987654323@。见Northwind example

    【讨论】:

    • 它不再免费了...
    【解决方案2】:

    我打算在我的系统上使用 ServiceStack,我发现它非常酷,它实现一些模式的方式令人印象深刻,我喜欢它的架构

    您打算提供服务的方式有所不同.. 但是,可以使用的框架是:(很明显,这取决于情况)

    • Agatha-rrsl 实现了 rrsl 模式,它允许在同一进程或分布式环境中使用 ServerAndClient 中的服务,例如。使用外部服务的 Web 应用程序(Agatha 将 WCF 用于外部服务)
    • OpenRasta 一个强大的框架,可用于构建整个应用程序或简单的 REST 服务
    • NServiceBus 实现了完整的服务总线架构,可以在同一进程中的 ServerAndClient 中使用,也可以以最适合该框架的分布式方式使用
    • MassTransit类似于NServiceBus(个人更喜欢NServiceBUs)
    • SimpleServiceBus 类似于 NServiceBus 但更简单、更酷
    • RhinoServiceBus,NServiceBus 上的一种 fork 非常非常酷

    了解像 Agatha 这样的服务框架与像 NServiceBus 这样的服务总线之间的区别非常重要。一个很好的观点可能是伟大的 Davy Brion 博客文章 论据http://davybrion.com/blog/2010/01/agatha-vs-nservicebus/

    如果我记得别的东西我会在稍后更新 希望对你有帮助

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 1970-01-01
    • 2010-11-27
    • 2010-10-13
    相关资源
    最近更新 更多