在突然关闭时,未处理的消息会发生什么情况?

huangapple go评论75阅读模式
英文:

What happens to unprocessed messages in go channel on abrupt shutdown?

问题

如果我使用 HPA(水平自动伸缩)或者由于 panic 而缩减副本数量,会发生什么情况呢?我的应用程序在 Kubernetes 中部署了一个 Go 应用程序。我的应用程序有一个 Go 协程,不断监听来自 Kafka 主题的消息,并将新消息推送到 Go 通道中进行进一步处理并提交 Kafka 消息。那么,如果我缩减副本数量,还有一些未处理的消息在 Go 通道中,会发生什么情况呢?

英文:

I have deployed a go application in kubernetes. My application has a go routine which continuously listens for messages from a kafka topic and push new messages into a go channel for further processing and commits kafka message. If I scale down the number of replicas using hpa/if replica goes down due to panic, what happens to the messages which are still in go channel unprocessed?

答案1

得分: 1

未处理的消息会发生什么呢?

Go语言中的通道是存在内存中的,所以当应用程序崩溃时,通道中的所有内容都会丢失。

英文:

>what happens to the messages which are still in go channel unprocessed?

The channels in go are in the memory, so when the app crashes, everything in the channels will be lost.

huangapple
  • 本文由 发表于 2022年2月10日 19:16:12
  • 转载请务必保留本文链接:https://go.coder-hub.com/71064132.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定