【发布时间】:2019-09-22 21:35:02
【问题描述】:
我正在开发一个应用程序,该应用程序包含一个
- 前端应用
- API,我喜欢将其视为网关
- 处理业务逻辑和数据库工作的微服务
在实现类似文件存储的功能时,为了上传小文件和大文件,我只是假设我会将这些文件存储在微服务的文件系统中,并将路径与元数据一起保存到微服务的数据库。
因为微服务没有实现任何 Http API 端点,所以我通过我的 API 网关上传文件。但是在意识到将这些文件从 API 传输到微服务以及提供相同的服务需要做多少工作之后,我只是将它们存储在 API 的文件系统中并将路径保存到微服务的数据库中。
这种方法可以吗?
我的 API gateway 从它自己的文件系统存储和提供文件是不是很奇怪? 如果是这样,我应该在上传时将文件从 API 传输到微服务,即使考虑到文件可能很大 - 还是微服务本身应该实现特定的 API?
我希望这个问题不会被解释为基于意见 - 我想知道哪种方法最适合考虑前端-api-微服务模式以及是否有任何架构标准可以解决这种情况,以及如果有任何方法,那就是 gotchas。
【问题讨论】:
-
只是想知道为什么微服务没有端点?应该是微服务处理文件上传
-
那么如果一个微服务同时处理数据库工作和文件上传就可以了吗?你能分享更多信息吗?也许还有链接/参考?
标签: api web file-upload upload microservices