1、性能优化流程:刚开始做性能优化从何入手你好,我是徐逸。 作为研发,在我们的工作中,除了做产品功能需求,有很多时间需要主动做技术需求,而其中比较重要的一项,就是服务性能优化。它关乎着用户体验以及我们可以支撑的业务体量。 然而,很多研发刚开始接触这方面工作时常常无从下手,最常见的痛点有这样几...2026-01-19Go服务开发高手课
2、工具使用:三大利器帮你迅速优化性能瓶颈你好,我是徐逸。 在上节课中,我提到了刚开始做性能优化工作常见的3个痛点。 现在我们对于性能优化的流程已经心中有数了。今天我就来带你消除另一个痛点,掌握常见的Golang性能优化工具。它也是服务性能优化流程第三步——分析瓶颈原因的基础。只要能够灵活运...2026-01-19Go服务开发高手课
3、单机吞吐优化(一):无需硬件升级也能提升吞吐你好,我是徐逸。 通过前面的学习,我们了解了性能优化的流程和Golang性能优化工具。 这节课开始我将带你掌握工作中常见的性能优化技巧,这也是服务性能优化流程第四步——性能调优的基础。只有掌握了一定的技巧,当我们定位到瓶颈原因时,才能更快地想出性能优...2026-01-19Go服务开发高手课
4、单机吞吐优化(二):高性能数据处理三板斧你好,我是徐逸。 通过上节课的学习,我们知道了提升单机吞吐的思路是定位到单机瓶颈资源。对于瓶颈资源,要么增加资源,比如提升单机CPU、内存等的规格;要么减少单个请求对瓶颈资源的消耗,让相同的资源可以处理更多请求。 对于CPU和内存瓶颈,我们也介绍了容...2026-01-19Go服务开发高手课
5、单机吞吐优化(三):科学复用对象和协程资源你好,我是徐逸。 上节课我们学习了几个高性能数据处理的技巧,它们能有效降低单个请求对 CPU 和内存资源的消耗,提升单机吞吐。 今天呢,咱们来聊聊另一种优化技巧 —— 资源复用。当我们在处理请求的时候,对于用完的临时对象或者协程,可以不立马销毁,而是...2026-01-19Go服务开发高手课
6、并发等待:如何降低实时系统的响应延时你好,我是徐逸。 在上节课中,我们学习了如何借助资源复用来降低Golang运行时的资源损耗,从而提升单机吞吐。在资源复用的技巧里,我们重点强调了协程池这一关键技巧。 有了协程并发的运用,自然少不了并发相关的技术。所以在今天的课程里,我们就来聊一聊协程...2026-01-19Go服务开发高手课
7、并发安全:如何为不同并发场景选择合适的锁你好,我是徐逸。 上节课我们一起学习了并发等待技术。不过在实际的编程实践中,我们会遇到各种各样的并发场景,所需要的并发技术也会有所不同。今天咱们就来聊聊在并发环境下,如何巧妙地运用锁,实现高性能、安全地访问多协程共享的数据。 我们先从一个问题入手。假...2026-01-19Go服务开发高手课
8、并发map:百万数据本地缓存,如何降延时减毛刺你好,我是徐逸。 在上节课的内容中,我们一起学习了锁和无锁编程技术,还使用分段锁和map类型,实现了一个缓存结构。不过,值得留意的是,其实 Go 语言的 sync 包已经提供了一种并发安全的 Map 类型。 今天,我就以大规模数据缓存的数据结构设计要...2026-01-19Go服务开发高手课
9、网络编程:如何进行网络IO编程降消耗,提吞吐你好,我是徐逸。 前面,我们花了不少篇幅一同深入学习了Go服务高性能编码技巧,来全力保障线上服务的性能。不过呢,除了我们写的业务逻辑代码,服务框架本身对于性能也有着举足轻重的影响。而影响框架性能的一个很重要的因素,就是框架所使用的网络IO模型。 今天...2026-01-19Go服务开发高手课
10、网络通信:不改业务代码,如何降低延时你好,我是徐逸。 在上节课的内容中,我们一起学习了网络编程技术,并了解了框架底层不同的网络IO模型是如何影响到服务性能的。 不过呢,当服务调用的IO延时比较长时,除了框架本身网络IO模型的优化之外,我们还可以使用其它方式,来降低服务调用的网络IO延时...2026-01-19Go服务开发高手课