RPC 2.0

AI新宠?解读MCP、A2A为何偏爱JSON-RPC 2.0 - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

April 16, 2025 · 9 min · Tony Bai

告别智能体孤岛:谷歌A2A协议能否成为企业AI协作的通用语?

本文永久链接 – https://tonybai.com/2025/04/14/what-is-a2a-protocol 随着人工智能(AI)的飞速发展,AI 智能体(Agent)正成为企业自动化、提升生产力的关键力量。从处理日常重复任务到辅助复杂决策,智能体的应用场景日益广泛。然而,一个严峻的挑战随之而来:不同框架、不同厂商构建的智能体往往如同信息孤岛,难以有效协作,这极大地限制了它们在复杂企业环境中的潜力释放。 ...

April 14, 2025 · 17 min · Tony Bai

Go 1.25新提案:GOMAXPROCS默认值将迎Cgroup感知能力,终结容器性能噩梦?

Go 1.25新提案:GOMAXPROCS默认值将迎Cgroup感知能力,终结容器性能噩梦? - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

April 9, 2025 · 12 min · Tony Bai

深入GOCACHEPROG:Go构建缓存的自定义扩展

本文永久链接 – https://tonybai.com/2025/03/04/deep-dive-into-gocacheprog-custom-extensions-for-go-build-cache 背景 众所周知,Go build cache是在Go 1.10版本加入到Go工具链中的,缓存的主要目标是避免重复编译相同的代码,从而加快构建速度。 默认情况下,Go构建缓存位于用户主目录下的一个特定目录中,例如,Linux上通常是$HOME/.cache/go-build,Windows上是%LocalAppData%\go-build)。Mac上则是$HOME/Library/Caches/go-build。当然,Go开发者也可以通过GOCACHE环境变量自定义缓存位置。构建缓存的目录布局结构如下: ...

March 4, 2025 · 18 min · Tony Bai

htmx:Gopher走向全栈的完美搭档?

本文永久链接 – https://tonybai.com/2024/09/20/htmx-gopher-perfect-partner-for-full-stack 在传统的Web开发领域,前端和后端开发通常被明确划分。前端主要负责用户界面的交互和视觉呈现,运用HTML、CSS和JavaScript等技术;后端则专注于服务器逻辑、数据库管理和核心功能实现,常用Go、Java、PHP、Ruby等语言。 ...

September 20, 2024 · 18 min · Tony Bai

通过实例理解Go标准库context包

原weibo账号处于jy状态,临时先用小号 https://weibo.com/u/6484441286,欢迎大家关注! “Gopher部落”知识星球双十一新人特惠,领劵加入即享立减88元优惠 – https://t.zsxq.com/078E1QTjM 本文永久链接 – https://tonybai.com/2022/11/08/understand-go-context-by-example 自从context包在Go 1.7版本加入Go标准库,它就成为了Go标准库中较难理解和易误用的包之一。在我的博客中目前尚未有一篇系统介绍context包的文章,很多来自Go专栏或《Go语言精进之路》的读者都希望我能写一篇介绍context包的文章,今天我就来尝试一下^_^。 ...

November 8, 2022 · 19 min · Tony Bai

使用multipart/form-data实现文件的上传与下载

1. Form简介 Form(中文译为表单),是HTML标记语言中的重要语法元素。一个Form不仅包含正常的文本内容、标记等,还包含被称为控件的特殊元素。用户通常通过修改控件(比如:输入文本、选择菜单项等)来“完成”表单,然后将表单数据以HTTP Get或Post请求的形式提交(submit)给Web服务器。 很多初学者总是混淆HTML和HTTP。其实,http通常作为html传输的承载体,打个比方,html就像乘客,http就像出租车,将乘客从一个地方运输到另外一个地方。但显然http这辆出租车可不仅仅只拉html这一个乘客,很多格式均可作为http这辆出租车的乘客,比如json(over http)、xml(over http)。 ...

January 16, 2021 · 15 min · Tony Bai

在Kubernetes上如何基于自定义指标实现应用的自动缩放

如何在Kubernetes上实现应用缩放? 使用静态配置将应用程序部署到生产环境并不是最佳选择。 流量模式可能会快速变化,应用程序应该能够实现自适应: 当需求增加时,应用程序应扩大规模(增加副本数)以保持响应速度。 当需求减少时,应用程序应缩小规模(减少副本数量),以免浪费资源。 Kubernetes以Horizontal Pod Autoscaler的形式为自动缩放应用程序提供了出色的支持。 ...

October 11, 2019 · 9 min · Tony Bai