akka-Cluster在k8s部署

2023-12-24 18:31:05

akka-Cluster:k8s部署

背景:在 Spring Boot 中整合akka集群。现在需要将其部署在k8s中。

以下仅是一个节点的配置过程。若存在多个节点,则需要配置多次。
假设当前项目为3个akka节点。则在kubernetes中结构为:
在这里插入图片描述

代码层面:

  1. 嵌入 启动 managementbootstrap 自动发现代码
    • 可在配置类中(@configurationActorSystem.create 创建 actorSystem
    • 再使用 @Resource 注入;
        public void init(){
   
            AkkaManagement.get(actorSystem).start();
            ClusterBootstrap.get(actorSystem).start();
        }
  1. 健康检查类:
    • 注意: 在后续的 conf配置时,需要配置该全限定类名
public class MyhealthCheck implements Supplier<CompletionStage<Boolean>> {
   

    private final Cluster cluster;

    public ClusterCheck(ActorSystem system) {
   
        cluster = Cluster.get(system);
    }

    @Override
    public CompletionStage<Boolean> get() {
   
        return CompletableFuture.completedFuture(cluster.selfMember().status() == MemberStatus.

文章来源:https://blog.csdn.net/qq_45888242/article/details/135179845
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。