【问题标题】:Fitting a 3rd party web service into your application design将第 3 方 Web 服务安装到您的应用程序设计中
【发布时间】:2009-03-20 02:47:37
【问题描述】:

我们有一个进程每天运行几次(通过 Windows 服务),管理员级别的用户也可以随时调用(通过网络应用)。此过程通过 Web 服务从合作伙伴处获取数据集,然后我们将这些数据与我们自己格式的本地副本合并。很简单。

我的问题是这如何适合我们的应用程序设计。我们有一个相当直接的应用程序服务层,它与我们的存储库交互以处理我们的域对象。域是持久性无知的。

这个过程应该如何适应这个架构?我们,

  1. 将大部分逻辑放在应用程序服务中?只需让它调用第 3 方服务,从存储库中获取我们的本地对象并执行更新/添加/等操作并保存回存储库。基本上只是将 3rd 方服务视为另一个存储库。
  2. 让应用程序服务获取我们的本地数据(暂时不用担心数据量),将其传递给将调用第 3 方服务的域级服务,根据需要合并数据,然后将新数据集返回给应用服务提交到存储库?
  3. 其他选项……

【问题讨论】:

    标签: design-patterns


    【解决方案1】:

    我会尝试远程服务网关“模式”。
    下面是从 Ajax 的角度来看这个概念的链接,而不是一个过程。然而,当我在 2006 年第一次看到 Dobbs Architecture and Design world 提出的概念时,这个例子更像你的案例 - 一个服务会偶尔调用一次。

    http://blog.ontheheap.com/2008/06/06/ajax-and-the-service-gateway-pattern/

    链接中的示例提供了基础知识。在这种情况下,它不必进行翻译。但是,网关可以分成不同的部分,以便它包括一个转换层或数据合并层。

    我用这种方法取得了成功。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-15
      • 2013-11-06
      • 2016-07-22
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多