golang

李燚20 小时前
javascript·人工智能·react.js·golang·aigc·agent
ReAct 循环的 50 行 Go 实现,逐行拆解系列「企业级 AI Agent 实现拆解」第三篇。上一篇讲了 Session 聚合根和状态机——状态怎么迁移、事件怎么发、终态怎么判。但状态机本身是静态的,谁在驱动这些迁移? 答案是 RunTurnHandler.Handle()——每一轮用户消息进来,它负责加载会话、组装上下文、把 ReAct 循环跑起来、然后落库收尾。
念何架构之路1 天前
开发语言·后端·golang
Go pprof性能剖析在Go语言中.如果想要进行性能优化.则可以使用Go语言自带的性能分析工具--pprof.pprof是一个强大的性能分析工具.可以捕捉到多维度的运行状态数据,它也是一个CPU分析器.是gperftools工具的一个组件.由谷歌工程师为分析多线程的程序所开发.pprof是Go语言分析的利器.其使用方式有如下两种.
姚不倒1 天前
云原生·golang
Go语言实战:构建一个安全的计算器服务(接口、错误处理与Panic恢复)在Go语言的学习过程中,接口、错误处理和panic恢复是三个非常重要的主题。今天我们将通过一个完整的案例——安全的计算器服务,综合运用这些知识,并引入装饰器模式进行日志记录。本文不仅会给出完整的代码实现,还会提供单元测试,帮助你彻底理解这些概念。
XMYX-02 天前
开发语言·golang
37 - Go env 环境变量:配置管理与运行时控制在 Go 开发中,环境变量(Environment Variable)几乎无处不在:GOROOT 是 Go 安装目录,GOPATH 是工作区路径,GOMODCACHE 是模块缓存。
姚不倒2 天前
云原生·golang
Go 进阶实战:实现泛型数据验证器从零构建支持泛型的数据验证系统,掌握 Go 泛型、自定义错误、批量验证与测试在日常开发中,数据验证是一个非常常见的需求。无论是用户注册信息、商品上架数据,还是表单提交内容,我们都需要对数据进行合法性校验。Go 语言从 1.18 版本引入泛型后,我们可以编写更加通用、类型安全的验证组件。本文将带领大家实现一个完整的泛型数据验证系统,涵盖:
XMYX-02 天前
开发语言·golang
36 - Go exec 执行命令在 Go 的日常开发中:这些场景几乎都离不开:很多人以为:exec 就是“执行一下命令”。但实际上:exec 本质上是 Go 对“进程控制”的封装。
lolo大魔王2 天前
http·golang·restful
Go 语言 HTTP 协议与 RESTful API 实训全解(理论 + 实战 + 规范)🏷️ 标签:Go HTTP RESTful API Web开发 后端实训 📝 适用人群:Go 初学者、Web 开发入门、课程实训、毕业设计 💡 核心亮点:理论易懂、实战可跑、完全符合课程实训报告格式
一只小逸白2 天前
linux·leetcode·golang
LeetCode Go 常用函数速查表这是一个知识汇总任务,不涉及代码实现,直接给你整理。整数 max/min(Go 1.21+):这些覆盖了 LeetCode Go 刷题 95% 的场景。需要某个部分展开更多例子吗?
LCG元2 天前
分布式·golang·wpf
【Go后端开发】从 0 到生产级:高性能分布式网关全实现 + 接口限流熔断降级实战在微服务架构成为企业应用主流的今天,分布式网关作为南北流量的统一入口,承担了路由转发、流量管控、安全校验、监控统计等核心职责。市面上成熟的开源网关虽功能完善,但往往体积庞大,对于需要深度定制贴合自身业务的企业来说,自研轻量化生产级网关是更优选择。
姚不倒2 天前
云原生·golang
Go语言进阶:接口、错误处理与并发编程(goroutine/channel/context)接上篇《Go语言基础入门:从零到实战,一篇文章掌握核心语法》,今天继续深入学习Go的中高级特性:接口、错误处理、panic/recover,以及并发编程的核心——goroutine、channel、锁、context等。文末附两个实战练习(切片操作+简易通讯录),帮助巩固知识。
宇明一不急3 天前
开发语言·链表·golang
go 链表 (标准库实现)Go 标准库里没有单链表,只在 container/list 包里提供了双向循环链表。list.List :链表本身,包含哨兵节点和长度 list.Element :链表节点,存数据 + 前后指针
~|Bernard|3 天前
开发语言·后端·golang
GO语言中哪些类型是可比较类型的(==和!=)在做这道力扣题目的时候,用到了数组的==操作,所以我对可比较类型产生了疑惑: 438. 找到字符串中所有字母异位词 - 力扣(LeetCode)
比特森林探险记3 天前
数据结构·golang·哈希算法
底层数据结构分析 go 语言中的 slice map channel interface下面从 运行时(runtime)实现层面 系统分析 Go 语言中 slice、map、channel、interface 的底层数据结构(基于 Go 1.x 标准实现)。
XMYX-03 天前
golang
35 - Go 文件操作:读写与临时文件在后端开发里,文件操作几乎无处不在:很多人觉得文件 IO 很简单:能跑就结束了。但真正到了线上环境:这些问题,本质都和 Go 文件系统 API 的设计有关。
姚不倒3 天前
云原生·golang
Go语言实战:多态文件存储系统(接口、错误处理、panic/recover)本文是Go语言进阶系列的第三篇。前两篇分别介绍了基础语法和并发编程,今天我们将通过一个实战项目——多态文件存储系统,深入理解接口、自定义错误、错误包装、panic/recover等核心概念。
Achou.Wang3 天前
elasticsearch·docker·golang
Docker 多阶段构建:优化 Go 应用镜像大小的最佳实践在现代容器化部署中,Docker 镜像的大小直接影响着应用的部署速度、存储成本以及安全性。对于 Go 语言开发者来说,虽然 Go 编译生成的是静态二进制文件,但如果不加以优化,最终的 Docker 镜像仍然可能包含大量不必要的构建工具和依赖库。本文将详细介绍如何使用 Docker 多阶段构建技术来显著减小 Go 应用的镜像体积,并以一个基于 Gin 框架的 Web 服务为例进行演示。
XMYX-03 天前
开发语言·golang
34 - Go 二进制处理(编码/解码)深度解析在 Go 开发中,很多开发者第一次接触“二进制处理”,往往是在:等场景。但很多人对它的理解,还停留在:
恣艺3 天前
开发语言·数据库·redis·缓存·golang
用Go从零实现一个高性能KV存储引擎:B+Tree索引、WAL持久化、LRU缓存的工程实践摘要:本文记录了从零用Go实现一个类Redis的高性能KV存储引擎的完整过程。涵盖B+Tree索引实现(O(logN)读写)、WAL预写日志(崩溃恢复保障)、LRU缓存(热数据加速)、RESP协议解析(兼容redis-cli)、以及Web实时监控面板。最终实现单机18.5万ops/s的吞吐量,P99延迟3.8μs,支持redis-cli直连。
geovindu3 天前
开发语言·后端·设计模式·golang·企业级信号量模式
go: Semaphore Pattern项目结构:调用:输出:
dusk_star4 天前
笔记·golang
go语言--笔记--封装、组合(继承)Go 语言没有 class,没有 extends,没有 implements,但封装、组合(继承)、多态这三大 OOP 特性,Go 不仅全都有,而且实现得更干净、更贴近底层硬件。(多态在接口的章节单独讲)