协议、中间件、网络服务和API之间的区别是什么?

3

这些术语非常相似,让我很困惑。
目前为止我知道的是:

  • 协议(protocol)是一组规则和方法,允许两个系统之间进行通信,就像现实生活中的语言,系统就像在交谈的两个人。
  • 应用程序编程接口(API)是一种软件,允许一个系统与另一个系统进行通信,就像服务员(API)将客户的请求传递给厨房,并将来自厨房的响应发送回客户一样。
  • Web服务是使用HTTP协议与客户端和服务器通信的API。在上述服务员的例子中,HTTP协议是客户端、服务员和厨房之间用来互相沟通的语言。

  • 中间件(middleware)是运行API的软件 (?)

我理解得对吗?

1个回答

2
简单来说, 协议可以被认为是两个或多个组件之间用于相互通信的法律诉讼或共同协议。大多数情况下,协议包括在彼此通信时应使用的步骤和/或过程。 API允许并定义了两个应用程序如何使用服务提供应用程序定义的方法进行通信。与协议相比,API描述了应用程序之间进行编程通信的方式。调用服务的应用程序必须正确遵守标准以获得所需的服务。 Web服务非常类似于API。 Web服务的显着特点是,开发Web服务希望用户通过互联网访问它。因此,Web服务可以被视为在线API。 中间件允许与位于多台计算机上的分布式应用程序组件进行通信(简单地链接位于各种计算机中的组件,以获取完整的应用程序功能)。中间件通过克服异构因素(操作系统、硬件、网络设备等)来最小化开发工作量。中间件位于应用程序(应用程序组件)和操作系统之间。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接