gpt4 book ai didi

api - 面向服务与面向API

转载 作者:行者123 更新时间:2023-12-03 03:34:28 26 4
gpt4 key购买 nike

我在 SO 上看到了几个围绕该主题的问题,但没有一个答案真正令我满意。

我试图用语言表达我的感受,但总是无法清楚地表达它们以说服我周围的人。可能是我错了。可能是我的理解还不够深入,找不到合适的论据。

您如何对比根据“面向服务的方法”而不是“传统”API 方法开发应用程序?

让我们明确一点,我所说的服务并不一定是指 Web 服务。

以下是我看到的一些差异。如果我错了,请纠正我:

  • 服务是一个“living thing ”,您可以根据给定的显式协议(protocol)与之通信。服务有自己的运行时,而库则使用应用程序的运行时。你可以把那个“活物”移动到任何你想要的地方
  • 库允许基于代码的集成,而服务传统上使用基于消息的集成(但是,没有什么真正阻止您编写基于交换消息的库)
  • 服务是可发现的
  • 合约是明确的并在运行代码“外部”表达
  • 服务是自治的(但同样,您可以编写自治 API,不是吗?)
  • 界限明确

我在这里缺少什么?服务与高级 API 的真正区别还有什么?

最佳答案

面向服务的架构意味着公开的接口(interface)并不位于客户端运行的同一主机上,并且服务与客户端代码完全解耦(松散耦合)。您可以通过在同一节点上加载必要的库并执行代码来轻松调用 API。面向服务的架构不是定义 API,而是关注功能,很多时候您可以使用不同的协议(protocol)访问相同的功能。

如果有什么东西可以区分 SOA 和 AOA,我会选择松散的代码耦合。

关于api - 面向服务与面向API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13010649/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com