Continuous Deployment with Akka.Cluster and Kubernetes (Akka.NET)

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 ม.ค. 2025

ความคิดเห็น • 4

  • @sweethomesweethome
    @sweethomesweethome 5 ปีที่แล้ว

    do we need akka cluster nodes with kubernates? Let kubernates create all the akka actor systems and not using akka cluster to manage the nodes?

    • @Petabridge
      @Petabridge  5 ปีที่แล้ว +4

      So to answer your question - Akka.NET actors run inside K8s containers inside a single .NET Core process. K8s can then orchestrate the creation of additional .NET Core processes which host Akka.NET actors inside them. What Akka.Cluster does - it allows these actors running inside each of those processes started by K8s to communicate with each other over the network. So as K8s scales up the number of processes, the bigger the Akka.NET cluster grows. That's the relationship - does that answer your question?

  • @sweethomesweethome
    @sweethomesweethome 5 ปีที่แล้ว

    When akka persistance is used, is the mailbox tied to a cluster or a single node? If the node dies, can another node process the same message?

    • @Petabridge
      @Petabridge  5 ปีที่แล้ว +1

      The mailbox is always in-memory and never persisted - only the messages that are explicitly saved by the actor via a `Persist` or `PersistAsync` call are saved to the underlying durable store. If that persistent actor dies and is recreated on a different node in the cluster, as long as that other node in the cluster is able to connect to the persistent store than all of those actor's saved messages can be recovered and replayed, bringing the actor back into its original state but on a different node.