前段时间给后端几个服务配证书,试着用了一下 Cert-Manager
项目。Github 几千 Star 的项目使用起来的确很方便,秒配域名免费证书。但是,运行了三天,机器CPU报警:
赶紧去项目 issues 里搜,果真遇到类似不止我一个, 问题竟然没修复,直接流汗了。不过还好,第二天这个问题就修复了。这里贴一下修复者的代码:
从修复的代码不难看出Cert-Manager
项目CPU泄露的原因,就是因为在循环中,不停的创建新的计时器,而每个计时器都会开启内部协程。再看看计时器的函数的官方注释:
// Tick is a convenience wrapper for NewTicker providing access to the ticking
// channel only. While Tick is useful for clients that have no need to shut down
// the Ticker, be