我正在寻找如何正确构建我正在构建的系统。
我将尝试提供系统要求的高级视图:
- 系统使用各种数据提供者(目前只有2个,但更多的是)。可以检索数据:
- 直接来自远程数据库(托管在提供商的服务器上,直接访问MySQL)
- 直接来自本地服务器上的文件(提供商通过SCP推送文件)。这里将有额外的逻辑来检查文件是否在这里并随后清除它们/移动它们
使用方法取决于提供者。
- 然后,系统需要定期将这些提供商的数据导入到本地数据库。每个提供商都有一个特殊的输入逻辑。
将所有代码放在一个单一的应用程序中显然似乎是一个坏主意,所以我正在考虑将它分成多个服务。
我真的不确定如何设计这个,并且会很感激一些建议。
详细信息:
- Java + Spring,如果需要在服务之间公开API
- 可扩展性/速度并不重要(我讨厌这样说 - 但在这种情况下,导入是否需要1毫秒或4小时并不重要)
- 一切都需要托管在一台服务器上,没有数据可以留下它(合理数据)
任何帮助都非常感谢!