关于什么是API,或者它是否与微服务相同,存在困惑。 您会发现各种各样的定义,但是当您必须实现每种方法时,您就会知道真相。
当您尝试对微服务和API进行概念性定义时,您将面临两个共同的概念:
· 微服务和API都需要自引导技术。
· 两者都可以部署在云中(实际上,您可以在云中部署任何东西)。
您可以继续将项目添加到列表中,以查找微服务和API之间的共同点,但有很大的不同:
· 当客户向微服务发出请求时,背后将是一个微服务网络进行合作,并且一起产生响应。 在这种架构中,微服务网络调度单个客户端请求。
· 另一方面,单个API将处理客户端请求,并且将在同一API的内部分层组织的多个组件的协作下分派该请求。 通常,一层将包含控制器,另一层将包含服务,在底部您将找到存储库对象。
以此方式,API体系结构被分层布置,而微服务体系结构被布置为网络。
(本文翻译自Alex Mosso的文章《The essential difference between microservices and APIs》,参考:https://medium.com/swlh/the-essential-difference-between-microservices-and-apis-aa47614b8538)