专栏名称: GoCN
最具规模和生命力的 Go 开发者社区
今天看啥  ›  专栏  ›  GoCN

Go 程序如何实现优雅退出?来看看 K8s 是怎么做的——上篇

GoCN  · 公众号  ·  · 2024-08-23 08:00
    

文章预览

本文带大家一起来详细学习下 Go 中的优雅退出,由于文章过长,拆分成上下两篇,本文为上篇。 在写 Go 程序时,优雅退出是一个老生常谈的问题,也是我们在微服务开发过程中的标配,本文就来介绍下工作中常见的几种优雅退出场景,以及带大家一起来看一下 K8s 中的优雅退出是怎么实现的。 优雅退出 我们一般可以通过如下方式执行一个 Go 程序: $ go build -o main main.go $ ./main 如果要停止正在运行的程序,通常可以这样做: 在正在运行程序的终端执行 Ctrl + C 。 在正在运行程序的终端执行 Ctrl + \ 。 在终端执行 kill 命令,如 kill pid 或 kill -9 pid 。 以上是几种比较常见的终止程序的方式。 这几种操作本身没什么问题,不过它们的默认行为都比较“暴力”。它们会直接强制关闭进程,这就有可能导致出现数据不一致的问题。 比如,一个 HTTP Se ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览