【问题标题】:Architecture design, how to setup our development infrastructure to support multiple apps and app types?架构设计,如何设置我们的开发基础架构以支持多种应用程序和应用程序类型?
【发布时间】:2013-06-23 13:57:06
【问题描述】:

我们正在尝试为我们的所有开发设置基础架构... 我们将构建网络应用程序、移动应用程序、其他 Outlook 插件等

所有这些应用都将使用相同的“数据”...

我们正在考虑为 Web 应用程序使用与 API 对话的单页 Angular 应用程序......其中一些应用程序是外部的,一些是内部的,即防火墙内部/外部......

问题是我们是否构建了一个 API,每个应用都可以与之通信(内部和外部)?

如果我们这样做,这个 API 与什么对话?它应该直接与数据库通信还是与直接与数据库通信的内部 Web 服务通信?

或者换句话说……

设计 1 = 应用程序 > API > Web 服务 > 数据库

设计 2 = 应用程序 > API > 数据库

下一个问题是,我的老板想要为每个应用程序提供一个 API,这让我有点困惑,我们一直在争论它……

有没有意义

应用程序 1 > 应用程序 1 的 API > 网络服务 > 数据库

移动应用程序 1 > 移动应用程序 1 的 API > 网络服务 > 数据库

就个人而言,我倾向于:

应用程序 1 > API > 数据库

应用 2 > API > 数据库等...

你有什么想法?

【问题讨论】:

    标签: web-services api web-applications mobile architecture


    【解决方案1】:

    根据给定的场景应用程序 > API > Web 服务 > 数据库更好,因为...

    在“应用程序 1 > API > 数据库”方法中,API 的业务逻辑会在每个 API 中重复......显然,将业务逻辑放在应用程序本身或数据库中并不是那么好。

    在“应用程序 > API > Web 服务 > 数据库”中,我们可以将许多常见的业务逻辑和其他基础设施相关的东西放在共享 Web 服务下,所有 API 都可以使用。

    由于异构 Web 或 Windows 应用程序可以使用 Web 服务...以这种方式放置共享功能总是好的。

    【讨论】:

      猜你喜欢
      • 2019-01-27
      • 2018-07-04
      • 1970-01-01
      • 2023-03-18
      • 2016-07-09
      • 2023-03-25
      • 2012-05-21
      • 2021-06-02
      • 1970-01-01
      相关资源
      最近更新 更多