我正在计划一个应提供以下功能的系统:
前端
您具有以下类别:“当前流行”,“新来者”,“经典”。每个类别应显示适合类别标题的电影列表。
后端:
哪个电影属于哪个类别的决定主要取决于收视人数与电影发行日期/年龄的比率。
我计划从以下两个外部来源(公共API)收集数据:
电影-关于哪些电影存在以及电影本身的元数据的真实来源。基本上是IMDB。
电影观看人数-一个外部API,可告诉我每天,每种媒介(电影,netflix等)观看电影的人数以及其他统计信息。
我需要将统计信息从来源2映射到来源1的电影,因此这两个域之间存在通信(和耦合?)的内在必要性。
解决方案A
我应该有一个“游戏服务”,它将源1的数据保存到一个表中,将源2的统计数据保存到另一个表中,并从单个端点公开合并的数据。
OR
解决方案B
我应该为每个提供两个不同的服务,然后将数据合并到我的api网关中。在这种情况下,我该如何建模必须将统计信息映射到我的实况电影服务/数据库的固有依赖性?
我了解domain object = microservice
is not the way to go,因此文献和社区“告诉”我选择解决方案A,但从直觉上来说,我更喜欢解决方案B。如果我想在将来显示电影预告片并提供第三个外部API,该怎么办对于那些。我会在单一服务中塞满这些服务还是创建一个新服务?
我没有经验,但坦率地说,我对域驱动的设计或软件体系结构没有足够的了解,无法在这里得出明智的结论。
非常感谢您的帮助。
答案 0 :(得分:1)
这看起来更像是ETL工具要解决的问题:https://en.m.wikipedia.org/wiki/Extract,_transform,_load
我知道AWS提供了称为“ Glue”的ETL服务:https://docs.aws.amazon.com/glue/latest/dg/getting-started.html