EN AR RU ZH FR ES

2025年3月8日 • 作者

微服务和API

微服务是通过API部署的小型、专用软件服务,API是启用请求者和主机之间通信的协议。它们用分布式的独立服务替代了单体架构,这些服务协同工作。

关键要点

  • 微服务将大型应用程序分解为离散的、单一用途的功能,可通过API独立部署。
  • API充当连接微服务与用户和其他服务的通信机制。
  • Kubernetes协调微服务的高效运行,提高可靠性和可扩展性,降低管理成本。
  • REST API最为常见,通过HTTP端点使用GET、POST、PUT、DELETE命令访问。
  • 开发者门户伴随API端点,记录服务用途、数据架构和使用要求。

微服务是由企业提供的小型、专业化服务。它源于分布式计算架构,该架构连接众多小型服务,而不是依赖单一的大型服务。

在此基础上,微服务可以使用应用程序编程接口 (API) 进行部署。

API 是一种协议,用于促进请求者和主机之间的通信,通常通过 IP 地址进行访问。API 可以通过多种方式与用户进行通信,包括:

  • 您希望共享的某些数据。
  • 您希望提供的服务

总之,"微服务" 一词指的是软件的架构,而 "API" 指的是将微服务暴露给客户的机制。

微服务的实际应用

微服务是企业提供大型单一服务概念的扩展。微服务是离散的功能。

如果将 Microsoft Word 分解为微服务,一个可能充当空白纸张,另一个充当拼写检查器,还有一个充当格式化工具。

Kubernetes 使软件能够适应。虽然 Kubernetes 提供了许多优势,但它也改变了软件架构的重点,从单一的服务集合转向众多小型服务的集合,这些服务协同运作。这是由于 Kubernetes 的设计,它能够实现:

  • 有效地编排服务器上单个容器的使用
  • 提高系统的可靠性和可扩展性
  • 降低管理和资源成本

单体架构与微服务架构对比图

来源:https://bit.ly/3hBxa89

微服务示例

微服务相当直接。简洁性是基本目标。它们可以被看作业务中的角色;每个微服务执行单一任务。

DZone 创建了一个出色的图表,展示了 Uber 提供的各种微服务,这些服务通过 API 相互通信并执行各种活动。Uber 为各种任务提供不同的服务:

  • 乘客管理
  • 乘客网络用户界面
  • 计费
  • 驾驶员管理
  • 驾驶员网络用户界面
  • 支付
  • 行程管理
  • 通知

微服务示例 API

来源:https://dzone.com/articles/microservice-architecture-learn-build-and-deploy-a

微服务需要 API。

API 是一种通信手段——它使一个服务能够与另一个服务通信。API 在未连接到某种东西(例如休眠的手机)之前无法做任何事情。当 API 连接到服务和微服务时,例如:

  • 功能即服务 (FaaS)
  • 机器学习 (ML) 即服务 (MLaaS)
  • 软件即服务 (SaaS)

API 是将微服务分发给用户的机制。API 使您的服务可用,而不是下载软件或插入光盘。

API 对于微服务架构的正常运行是必需的,因为它充当服务之间的通信手段。没有 API,就会存在大量孤立的微服务。从技术上讲,微服务只会将自身重新组织成单体架构。

API 如何运作

API 非常灵活。您能够:

  • 可以为任何容器化服务创建 API。
  • 使用多种语言——Java、Python 和 Go,仅举几例。
  • API 可以部署在任何主要云提供商上。

API 可以提高您的服务的可用性和曝光度。通过简化分发,您可以提供更紧凑的服务。(毕竟,您不需要创建整个 Adobe 套件来展示可行性。)

许多 API 是 RESTful 的,可以通过类似于 HTTP 端点的端点访问。这意味着从 API 检索数据就像 ping URL 一样简单。GET、POST、PUT 和 DELETE 命令在与 URL 配合使用时按预期工作,向 API 接收或提供数据。虽然 REST API 是当今在线应用中最常用的,但其他选项包括以下内容:

  • SOAP
  • RPC
  • GraphQL

作为产品,API 端点通常与开发者门户一起提供,该门户说明了如何使用它,并为开发者提供 API 密钥。如果微服务的目的是提供特定县注册车辆的信息,开发者门户将说明:

  • 服务的功能
  • 数据的结构(即数据模式)
  • 开发者需要做什么才能使用 API?

如果您拥有单体服务,我们可以帮助您使用微服务和 API 来扩大受众范围并提高性能。

联系我们了解更多详情。

常见问题

微服务是指小型、专用服务的软件架构。API是微服务被公开并与用户和其他服务通信的机制。
微服务允许离散功能独立部署,提高灵活性和可扩展性。通过Kubernetes,它们可以高效编排,同时降低管理和资源成本。
REST API是最常用的类型,可通过HTTP端点访问。其他选项包括SOAP、RPC和GraphQL。
API作为服务和用户之间的通信协议。没有API,微服务将被隔离;该架构在技术上会重新构建成单体。
API可以使用多种语言创建,包括Java、Python和Go,并可在主要云提供商上部署。

公司概况

推荐并赚取

每个网站都需要 可靠的托管。

科威特快速、安全、本地管理的网站托管 — 每日备份、支持KNET且提供阿拉伯语和英语支持。选择一个计划并自信地上线。