暂无搜索历史
2025年终于结束了,各大平台的年度总结报告如约而至,B站告诉你今年看了多少有趣的视频,滴滴给你统计了多少次车程,高德地图甚至能告诉你今年都走到了哪些角落,美团...
做后端、做中台、做数据平台的同学,多少都被 Protocol Buffer“支配”过。
先说明一下:这不是一篇「你装了就能年薪翻倍」的文章,而是一份不装它们,我每天都会多浪费 1~2 小时的清单。
有时候,一句温柔的小提示,比一束花更能治愈一天的情绪。如果你刚开始接触 Dify,甚至还没想好要做什么应用,那么这篇文章能让你在 10 分钟内跑通一个真正能用的...
在AI大模型技术爆火之前,"向量"、"相似度"、"召回"这些词还只是少数算法工程师的专业术语。 但自从以ChatGPT为代表的LLM技术爆火、RAG 爆发以及团...
在我们日常使用大语言模型(LLM)API 时,比如 OpenAI、Anthropic 或其他厂商的接口,token 数量几乎是一个绕不开的问题。无论是控制调用成...
"状态"指的是应用在其特定时间点的状况。一个应用属于有状态还是无状态,取决于它是否记录与用户、系统或其他组件交互的上下文。有状态应用会将这些状态信息保存在持久化...
在Go语言的并发编程中,channel扮演着至关重要的角色。它不仅是Goroutine之间通信的桥梁,更是实现优雅并发模式的核心工具。由Go语言之父Rob Pi...
很多同学第一次写 Go 的并发代码时,都会尝试用 for + select 来监听 channel:
想象一下,你有几十上百个服务副本,每个 Pod 的 IP 地址都像是临时旅馆的房号——今天住 101,明天就可能换到 307。要是每个调用方都去记 Pod 的 ...
在 Go 语言的并发编程中,goroutine 是一个非常强大的概念,它允许我们同时执行多个任务。然而,很多时候我们并不希望一个 goroutine 永远运行下...
在 Go 语言的开发过程中,我们经常会用到一些第三方工具,比如 golangci-lint、air、cobra-cli 等等。这些工具都有一个共同的特点:你可以...
在微服务架构的落地过程中,模块的拆分往往是最具挑战性的问题之一。拆得过细,系统会陷入“分布式地狱”,调用链冗长、运维复杂;拆得过粗,又会变成“伪微服务”,无法发...
作为一名程序员,我一直把 索引 当作数据库的“导航系统”。当表里只有几百行数据的时候,MySQL 像个勤快的小弟,翻翻全表也就几毫秒的事。但当数据量上百万甚至上...
在Go语言中,map 是一种非常常用的数据结构,它允许通过键值对存储和访问数据,提供了非常高效的查找操作。对于很多应用场景,map 是一种理想的选择。然而,在多...
在 Go 中 sha256.Sum256() 返回的是一个 固定长度的数组 [32]byte,如果我们需要把它转成 字节切片([]byte) 或 字符串(十六进...
前者往往不可避免——业务规则、合规与现实世界的边缘场景会存在;后者是可以被设计、组织与流程所控制的。目标不是消灭所有复杂性,而是把必要的复杂性放在对业务最有利、...
在Go语言中,"空值"是一个重要概念,它表示变量或数据结构未被初始化或显式赋值的状态。