Twitch工程师的Go进阶之路:为何你写的Go代码,总感觉“不对劲”?

本文永久链接 – https://tonybai.com/2025/07/04/everything-i-did-to-become-an-expert-in-golang 大家好,我是Tony Bai。 你是否也有过这样的时刻? 你已经用 Go 写了不少代码,项目也能跑起来,但内心深处总有一种挥之不去的“别扭感”。你写的 Go 代码,看起来更像是“带有 Go 语法的 Java/Python”,充斥着你从旧语言带来的思维习惯。代码或许能工作,但它不优雅,不简洁,总感觉“不对劲”。 ...

July 4, 2025 · 7 min · Tony Bai

通过实例理解OpenID身份认证

本文永久链接 – https://tonybai.com/2023/12/22/understand-oidc-by-example 在《通过实例理解OAuth2》一文中,我们以实例方式讲解了OAuth2授权码模式(Authorization Code)模式的工作原理。实例中的照片冲印服务经过用户(tonybai)的授权后,使用用户提供的code(实则是由授权服务器分配并通过用户的浏览器重定向到照片冲印服务的)到授权服务器换取了access token,并最终使用access token从云盘系统中读取到了用户的照片信息。 ...

December 22, 2023 · 14 min · Tony Bai

通过实例理解OAuth2授权

本文永久链接 – https://tonybai.com/2023/12/16/understand-oauth2-by-example 在之前的《通过实例理解Go Web身份认证的几种方式》和《通过实例理解Web应用授权的几种方式》两篇文章中,我们对Web应用身份认证(AuthN)和授权(AuthZ)的几种方式做了介绍并配以实例增强理解。 在现实世界中,还有一大类的认证与授权是在前面的文章中没有作为重点介绍的,那就是OAuth2授权与基于OAuth2之上的OpenID身份认证(OIDC, OpenID Connect)。 近期接触到开放平台(Open Platform)的设计和开发,整个开放平台的授权流程都是基于OAuth2打造的,因此在这篇文章中,我就来先来通过实例详细说说OAuth2,OIDC将放在后面的文章中说明。 ...

December 16, 2023 · 21 min · Tony Bai

通过实例理解API网关的主要功能特性

本文永久链接 – https://tonybai.com/2023/12/03/understand-api-gateway-main-functional-features-by-example 在当今的技术领域中,“下云”的概念正逐渐抬头,像David Heinemeier Hansson(37signals公司的联合创始人, Ruby on Rails的Creator)就直接将公司所有的业务都从公有云搬迁到了自建的数据中心中。虽说大多数企业不会这么“极端”,但随着企业对云原生架构采用的广泛与深入,不可避免地面临着对云服务的依赖。云服务在过去的几年中被广泛应用于构建灵活、可扩展的应用程序和基础设施,为企业提供了许多便利和创新机会。然而,随着业务规模的增长和数据量的增加,云服务的成本也随之上升。企业开始意识到,对云服务的依赖已经成为一个值得重新评估的议题。云服务的开销可能占据了企业可用的预算的相当大部分。为了保持竞争力并更好地控制成本,企业需要寻找方法来减少对云服务的依赖,寻找更经济的解决方案,同时确保仍能获得所需的性能、安全性和可扩展性。 ...

December 3, 2023 · 26 min · Tony Bai