This abstract给出了微服务和 API 之间的区别:
A microservice exposes it's interface, what it can do, by means of an API. The API is the list of all endpoints that a microservice respond when it receives a command/query. The microservice contains the API and other internal+hidden things that it uses to respond to client's requests.
我在 Java 中使用过模块和微服务,但是否有更好的方法来区分模块和微服务之间的差异?
根据我的经验,导入了多个模块作为微服务项目的一部分。微服务是某种具有公开 RESTful 端点的附加功能的模块吗?模块与微服务有何显着区别,反之亦然?
我们是否可以就所讨论的主题进行更多讨论以澄清潜在的混淆?
为了更加清晰,我添加了一些视觉辅助:
如果可以,请反驳,并提供与您使用微服务和模块的经验相关的可靠引用。
最佳答案
微服务提供 API(REST 或 No Rest)。
微服务代码可以以某种更大的项目可以将其用作模块的方式编写。
当我们选择它是微服务而不是模块时:
- 我们将它与使用它的系统分离
- 此微服务可以独立扩展,即,为其目的使用特定的数据库
- 使用任何开发语言(最适合其用途)- 如果将其用作模块,则必须使用编写大部分代码库和模块的语言编写
- 处理其数据补丁
关于java - 模块和微服务之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53497953/