我有以下建筑场景,它不依赖于我,我无法改变:
在一台服务器/机器上有几个php
个应用程序和一个postgres
数据库:每个应用程序都使用自己的架构,以便逻辑地分离应用程序的数据。我正在开发一个新的应用程序 - 由 A 代表的应用程序 - 使用Symfony,它管理和存储应该可由其他应用程序部分访问的数据,尤其是一个旧的应用程序。没有使用symfony或任何其他框架开发。为了简单起见,您可以想象一个应用程序存储通过其REST API从客户端发送的电影。我想 B , C 访问电影'数据: B 偶尔需要访问所有电影,其中某个演员在其中播放, C 想要更新所有者工作室(反之亦然)。当然,这将是一个 A 的工作,symfony应用程序就是出于这个目的而出生的。所以我认为我有两种方式,用箭头表示:
API
类,并且不需要任何逻辑Symfony的支持(PDO和朋友。没有服务,没有组件,没有。)。幸运的是,我所揭示的内容很少,而且不会是那个大问题。
最后,我会避免通过shell(即app.php console/getMovie
)调用 A ,因为它消耗了大量资源,而且我认为它不那么快。我的服务器非常小,无法实现这些是我找到的两种解决方案,但我很欣赏你认为我应该如何设计这个。
答案 0 :(得分:1)
可以通过在公共位置(通常是公共模式)中使用视图来在模式之间共享数据。
这有几个好处:
有缺点:
更新视图意味着在使用它的所有应用程序上部署新模型文件。它可以是一个独立于其他应用程序依赖于作曲家的项目。