共 88 篇文章
Go 并发进阶:WaitGroup vs ErrGroup 详解
Go 语言提供了丰富的并发原语,本文详细介绍 sync.WaitGroup 和 golang.org/x/sync/errgroup 的区别和使用场景。
简介
Go 的并发模型以 goroutine 和 channel 为核心,但在实际项目中,我们经常需要协调多个 goroutine 的执行。这就涉及到两组常用的工具:
- sync.WaitGroup:Go 标准库,简单同步
- errgroup:Go 扩展库,功能更强大
Prompt Template 与结构化输出实战
在 AI 应用开发中,如何让大模型稳定地输出我们想要的格式?本文介绍如何使用 Golang 实现 Prompt Template,并结合 DeepSeek 的 JSON Mode 实现可靠的结构化输出。
什么是 Prompt Template
Prompt Template 是将提示词模板化的技术,通过占位符动态注入变量,让同一套提示词可以处理不同输入。类似于 Web 开发中的模板引擎。
MySQL vs Elasticsearch:使用场景深度解析
在做系统设计时,数据库选型是一个关键决策。MySQL 和 Elasticsearch 是两种不同定位的存储方案,今天结合实际项目经验,系统性地对比一下它们的适用场景。
MySQL 和 Elasticsearch 的定位差异
| 特性 | MySQL | Elasticsearch |
|---|---|---|
| 定位 | 关系型数据库 | 分布式搜索和分析引擎 |
| 数据结构 | 行存储,B+树索引 | 倒排索引,文档型 |
| 擅长 | 事务、关联查询、结构化数据 | 全文搜索、聚合分析、海量数据 |
| 数据模型 | Table(表) | Index(索引),Document(文档) |
深入理解 Redis 事务与原子性
Redis 事务是一组命令的集合,通过 MULTI 和 EXEC 命令来执行。事务中的所有命令都会序列化,按顺序串行执行,不会被其他命令插入。本文深入解析 Redis 事务的特性和原子性问题。
本周阅读清单 20191130
Uber 的 Go 指导规范
https://github.com/uber-go/guide/blob/master/style.md使用 JWT 保证服务间通信的安全
https://abekthink.github.io/backend/json-web-token/MySQL 查询对大小写不敏感
https://www.jianshu.com/p/408daf82ac71服务流量限制(漏桶、令牌桶)
https://chai2010.cn/advanced-go-programming-book/ch5-web/ch5-06-ratelimit.html为什么推荐 InnoDB 引擎使用自增主键?
https://blog.csdn.net/zheng0518/article/details/76302167MySQL 唯一性索引与 NULL 字段
https://yemengying.com/2017/05/18/mysql-unique-key-null/
本周阅读清单 20190830
HTTP 代理原理及实现
https://imququ.com/post/web-proxy.html为什么使用通信来共享内存?
https://draveness.me/whys-the-design-communication-shared-memory深入理解 Go-defer 的原理剖析
https://juejin.im/post/5d71d1edf265da03e52356fbNginx 实现 JWT 验证-基于 OpenResty 实现
https://segmentfault.com/a/1190000015677681更加顺手的用好 Laravel 的多态关联
https://segmentfault.com/a/1190000020811031
本周阅读清单 20190808
PHP 正则 preg_match 匹配长度限制
https://learnku.com/articles/7193/php-regular-preg-match-matching-length-limit深悉正则(pcre)最大回溯/递归限制
http://www.laruence.com/2010/06/08/1579.htmlRedis 的内存优化
https://cachecloud.github.io/2017/02/16/Redis内存优化Content-Disposition 的 filename 与 filename 区别*
https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Content-DispositionRedis Scan 命令原理
https://segmentfault.com/a/1190000018218584Redis 字典的遍历 dictScan 算法
http://www.langdebuqing.com/redis%20notebook/redis源码解读:字典的遍历dictScan.html