gpt4 book ai didi

java - 将 Web Controller 添加到 Akka Actor 系统

转载 作者:太空宇宙 更新时间:2023-11-04 09:14:48 24 4
gpt4 key购买 nike

我正在使用 Akka 和 Spring。

我有一个在 Kafka Stream 设置上运行的 actor 系统(使用 akka-stream-kafka_2.12),并且 actor 在内存中保存一些数据并使用 akka-persistence 保留其状态。

我想知道的是,我能否创建一个可以与我的 Actor 系统交互的 REST 端点,以提供一些数据或向我的 Actor 发送消息。

我的问题是,如何实现?

最佳答案

正如评论中所说,我在 github 中创建了一个示例工作应用程序来演示 Spring 与 Akka 的用法。

请注意:

  1. 我使用 Springboot 进行快速设置和配置。
  2. 您不能指望在此演示中获得任何良好/最佳实践项目,因为我必须在 30 分钟内创建这个项目。它只是解释了其中之一在 Spring 中使用 akka 的方法(简单)。
  3. 此示例不能在微服务架构中使用,因为这里不涉及远程处理或集群。 API Controller 直接与参与者对话。
  4. 为了简单起见,在 Controller 中,所有地方都使用 GetMapping 而不是 PostMapping。
  5. 将用另一个解释用法的示例更新存储库与 Clustering 其中 API 之间的通信方式Controller 和 ActorSystem 发生变化。

这是Repo的链接。希望这能让您开始。

您可以自己构建应用程序,也可以在命令提示符中运行 api-akka-integration-0.0.1-SNAPSHOT.jar 文件。它在默认的 8080 端口上运行。此示例包含两种 API,/Calc/{Operation}/{operand1}/{operand2}/Chat/{message}

/聊天/你好

/calc/add/1/2

/calc/mul/1/2

/calc/div/1/2

/calc/sub/1/2

编辑:2

使用 API 中的 Akka 集群使用更新了存储库

API-Akka-Cluster

关于java - 将 Web Controller 添加到 Akka Actor 系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59179490/

24 4 0
文章推荐: python - 从 python 运行 bash 命令并捕获文件对象
文章推荐: linux - 使用 awk 修改多列
文章推荐: java - 哪个 'cacerts' 应该用于更新 Java 安全文件?
文章推荐: java - 如何使用 Retrofit 发布 ArrayList