只需三步,即可使用 Kafka 托管服务快速部署微服务架构应用

微服务架构的应用程序的特点是将其组件组织得能够独立地进行开发、测试、部署和扩展。DigitalOcean App Platform(应用平台)的目标是通过允许用户在同一应用上添加多个组件,简化这一架构模型,使其更加平滑和易于管理。

一个简单的微服务架构应用程序可能有两个组件:

  1. 网络服务 API :接收请求并向分布式事件处理平台(如 Kafka)发布信息,并立即向用户返回响应,无需等待处理完成。用户随后可以轮询响应状态。这种模式在响应用户请求方面提供了更好的用户体验。该组件可以作为服务组件类型部署在 App Platform 中。
  2. 后端处理服务 :用于监听来自分布式事件处理平台的事件。该组件可部署为工作组件类型,负责接收消息并执行满足用户请求所需的业务逻辑。

这种类型的微服务架构允许开发者分别根据应用需求来扩展网络服务API(生产者)和后端处理服务(消费者)。例如,后端服务处理可能需要大量CPU资源,因此可以从基于需求自动扩展的专用CPU(Dedicated CPU)实例中获益。另一方面,网络服务API可能在具有固定2个规模的共享CPU(Shared CPU)实例上表现良好,以此来实现冗余。

托管的 Kafka 集成

App Platform 支持具有多个组件的应用程序,实现了微服务架构所需的生产者和消费者模式。通过与DigitalOcean Kafka 托管服务的无缝集成,我们进一步简化了开发人员的开发过程。有关集成的更多详情,请参见文档。

App Platform 的 Kafka 集成允许你将 Kafka 实例附加到应用程序,并简化连接 Kafka 所需的环境变量配置。这样,你就可以专注于构建应用程序,而不必担心基础设施的设置。

我们的目标是尽可能简化操作,具体步骤如下。请尝试一下,并告诉我们你的想法!

第 1 步 - 配置托管 Kafka 实例

有关如何部署托管 Kafka 的说明,请点击此处。要发布和消费消息,还需要创建一个topic。

第 2 步 - 部署应用程序

请按照以下步骤部署您的应用程序,并测试其功能。同时也可以参考我们在 github 提供的代码。

  1. 生产者

你可以在软件仓库的 /producer 目录中找到生产者。生产者是一个 HTTP API,它将请求体发布到 Kafka,并且还包括一个网络接口,可通过 HTTP 请求来生成信息。

  1. 消费者

你可以在 /consumer 目录中找到消费者。消费者是一个监听来自 Kafka 的事件并打印信息的工作程序。

  1. 托管 Kafka

这是第1步中创建的托管 Kafka 实例。

下面是你的应用程序的外观。请注意,生产者是一个网络服务,消费者是一个工作程序。

此外,为了确保你的应用程序能正确连接到 Kafka,需要使用以下环境变量。

复制代码
Unset
KAFKA_BROKER=
${kafkaocean.HOSTNAME}:$
{kafkaocean.PORT}
KAFKA_USERNAME=${kafkaocean.USERNAME}
KAFKA_PASSWORD=${kafkaocean.PASSWORD}
KAFKA_CA_CERT=${kafkaocean.CA_CERT}
KAFKA_TOPIC=datastream

第 3 步 - 测试您的应用程序

示例应用程序中包含一个网络用户界面,用于生成信息。你在用户界面中输入的文本可以在消费者组件的运行日志中看到。

下一步是什么?

为了持续提升你所获得的价值,我们发布了与 App Platform 的托管 Kafka集成测试版。但我们不会就此止步!我们将研究如何确保 Kafka 与应用程序连接的安全性,以及如何改善环境变量设置的用户体验。

目前,我们建议使用专用 IP 来确保你的托管 Kafka实例只接受来自应用程序的连接。

你有进一步改进集成的想法吗?请联系DigitalOcean的合作伙伴------DigitalOcean中国区独家战略合作伙伴卓普云。有关 App Platform 特性和功能的详细信息,请访问App Platform 产品页面。

相关推荐
天空属于哈夫克35 天前
企业微信二次开发:精准实现关键词自动回复
架构·企业微信
晨米酱5 天前
AGENTS.md:Agent 的上下文策略层
面试·架构·agent
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
码流子5 天前
高速公路安全监测实践:碰撞监测预警+物联网底座,从感知到处置的闭环
大数据·人工智能·物联网·算法·架构
moMo5 天前
从固定流程到问题路由:让 LangGraph RAG 按需检索
架构
白远山5 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
LorryJovens5 天前
【LAAP科研】双系统具身AGI范式研究——基于LAAP认知架构与Jev概率决策模型的系统性技术调研与范式验证
人工智能·gpt·安全·架构
JQweryuiop5 天前
中小型游戏陪练工作室数字化管理实践:基于七彩屋电竞护航小程序订单、履约与绩效系统的落地复盘
大数据·游戏·小程序·架构
LONGZETECH5 天前
一线职教实测:风光 580 汽车故障诊断仿真系统,破解实车实训四大核心痛点
人工智能·学习·安全·架构·汽车
萧瑟余晖5 天前
Netty 核心组件与 Reactor 模型详解
网络·架构