runtime.GOMAXPROCS()或环境变量指定程序使用的CPU核心数(建议设置为Linux容器的CPU配额或物理核心数),以充分利用多核处理器的计算能力。例如:export GOMAXPROCS=$(nproc)或runtime.GOMAXPROCS(runtime.NumCPU())。GOGC环境变量控制GC触发频率(默认100%,即堆内存增长100%时触发),可根据应用内存使用情况调整(如export GOGC=200降低GC频率,减少对业务的影响)。GOMEMLIMIT限制进程内存使用(如export GOMEMLIMIT=512Mi),防止内存耗尽导致程序崩溃。sync.Pool复用临时对象(如数据库连接、缓冲区),避免频繁创建和销毁带来的GC压力。unsafe包进行零拷贝转换(如字符串与字节切片的转换),但需注意安全性(仅用于性能敏感场景)。ants库),避免过多goroutine导致的调度开销和内存占用。sync.RWMutex(读写分离)、sync.Map(并发安全map)或无锁数据结构(如atomic包),降低并发冲突。map存储,而非数组遍历。bufio.Reader/bufio.Writer)减少系统调用次数,提高文件/网络读写效率。io_uring库)或非阻塞I/O(如netpoll),避免阻塞goroutine。http.Transport的MaxIdleConns设置),减少TCP握手开销。io.Copy代替手动读写循环),避免频繁切换内核态与用户态。-ldflags="-s -w"移除调试信息和符号表(可减少20%~30%的二进制大小),提高启动速度。例如:go build -ldflags="-s -w" -o myapp。go env GOCACHE查看缓存路径。GOMAXPROCS设置并行编译的CPU核心数,加快编译速度(如export GOMAXPROCS=8)。-ldflags="-extldflags -static"生成静态链接的二进制文件(无需依赖动态库),便于在容器环境中部署。-gcflags="-m -l"开启内联优化(减少函数调用开销),或使用PGO(基于Profile的优化)生成更贴合实际运行情况的二进制文件(如go build -gcflags="-m -l" -o myapp)。net/http/pprof包,启动HTTP服务(如go tool pprof http://localhost:6060/debug/pprof/profile分析CPU,http://localhost:6060/debug/pprof/heap分析内存)。top、list等命令查看热点函数,针对性优化。go tool trace http://localhost:6060/debug/pprof/trace?seconds=5生成trace文件,分析协程状态切换、GC活动、系统调用等,找出并发瓶颈。/etc/security/limits.conf(如* soft nofile 65535),增加单个进程可打开的文件描述符数量,避免高并发场景下出现“Too many open files”错误。/etc/sysctl.conf,调整网络参数(如net.core.somaxconn=65535增加监听队列长度,net.ipv4.tcp_tw_reuse=1复用TIME_WAIT连接),提高网络性能。以上技巧需结合应用场景(如高并发、大数据处理、低延迟)和实际性能测试结果(如go test -bench)灵活调整,持续监控和优化才能达到最佳效果。