GolangNote

Golang笔记

go完成了自举

Permalink

go 完成了自举,就是使用 go 语言来编译 go 语言。对于 golang 语言来说,之前都是使用 c 语言实现的。

c 语言实现一个功能,或者优化一个功能都费时费力,而使用go的话,开发效率更高。同时,golang语言实现自举也说明了 golang 语言的成熟度足以构建大型项目。

go完成了自举

golang 基本解决了GC的问题。GC 的 STW 时间大幅度缩小。

另外那条“默认 Go 程序使用 GOMAXPROCS 变量来设置 CPU 核数,之前默认是1”,并不是单纯的一个默认值的改动让你减少一行蛋疼的代码这么简单。他基于一个前提是现在 goroutine 的调度器的性能已经越来越好。

如果调度器性能不行,在一些场景可能会出现一种情况,就是在 goroutine 数量相同的情况下,用的 CPU 越多也就是开的线程越多,性能反而变差。而 go 的开发者目前认为,1.5 的调度器性能 nb 了很多,在各种测试场景上已经不会导致多核比单核还差很多,于是改了默认值。

但也存在一些性能问题,比如在某些具体应用上发现变慢了,这很正常,首先是实现,其次是优化。

本文网址: https://golangnote.com/topic/41.html 转摘请注明来源

Write a Comment to "go完成了自举"

Submit Comment Login
Based on Golang + fastHTTP + sdb | go1.20 Processed in 0ms