博客
关于 GPU、LLM、MLOps、Kubernetes 以及心态的文章 · 855 篇
#2026-03 168#ai 112#llm 90#ai-papers 62#career 60#kubernetes 57#mindset 51#ai-platform 48#devops 45#security 43#deep-learning 35#performance 33#psychology 32#mlops 30#observability 29#2026-04 26#linux 24#database 23#robotics 22#rust 22#ai-agent 21#mcp 20#productivity 20#culture 19#evaluation 19#gpu 18#transformer 18#electronics 17#paper-review 17#pytorch 17#developer-tools 16#distributed-systems 16#engineering 16#learning 16#open-source 16#postgresql 16#rag 16#fundamentals 15#network 15#2026-08 14
科幻并不预测未来 — 把科学小说当作思想实验来读 ♪ 可收听
一旦用命中率去衡量科幻,这个类型立刻变得最无趣。厄休拉·勒古恩断言科学小说不是预测而是描述,达科·苏文则用诺弗姆这个名字把方法整理了出来。往世界里放进一样新东西、再把它的波及一路推到底的纪律,从黄金时代经新浪潮与赛博朋克一直延伸到金草叶的谱系,以及把反乌托邦误读成预言时会失去什么 — 全文不含剧透,文末附上按口味划分的入门路线。
2026-07-26 · 22 分钟阅读 #storytelling#science-fiction#fiction#narrative#culture密钥(secret)管理 — 只靠 .env 文件为什么不够,环境变量泄漏的路径与轮换设计 ♪ 可收听
把 .env 文件加进 .gitignore,并不等于密钥就安全了。进程环境在同一台主机上可以通过 /proc/PID/environ 被原样读出,会随着崩溃报告、调试页面和 CI 日志一起流出,还会永久留在容器镜像的层里。本文逐条展示环境变量真实的泄漏路径,并说明当密钥已经被提交时,为什么响应顺序是先吊销密钥而不是先重写历史。文章还会讲清 Kubernetes Secret 里的 base64 并不是加密、用短生命周期凭证与工作负载身
2026-07-26 · 23 分钟阅读 #security#secrets#devops#vault#kubernetes依赖供应链安全 — 锁文件挡不住的那些东西 ♪ 可收听
你在 package.json 里亲手写下的包只有十几个,实际装进来的却超过一千个。本文解释传递依赖为什么比直接依赖更危险,并用真实的锁文件条目说明整合性哈希为什么只保证可复现性,对恶意代码则毫无作用。文章会讲清 typosquatting 与 dependency confusion 成立的条件,以及如何用作用域固定和索引优先级配置把它们挡掉,还有 postinstall 脚本实质上就是任意代码执行点这件事和阻断办法。然后,从 SBO
2026-07-26 · 19 分钟阅读 #security#supply-chain#npm#sbom#ci认证、授权,以及 IDOR — 登录明明是正常的,却能看到别人的数据 ♪ 可收听
真实的数据泄露事故大多不是出在认证上,而是出在授权上。最典型的就是 IDOR:登录正常通过,只要改一下 URL 里的 ID,别人的资源就原样返回了。本文在代码层面把认证与授权的边界划清楚,并准确说明把顺序 ID 换成 UUID 为什么只是缓解措施而不是解决方案。文章还会讲清授权检查一旦散落在各个控制器里就必然会有遗漏,因此必须集中到数据访问层或策略引擎;多租户下把租户条件强制进查询的模式与 PostgreSQL 行级安全的配置;用两个账
2026-07-26 · 21 分钟阅读 #security#authorization#idor#api#multi-tenant斯坦福监狱实验是怎么垮掉的 — 档案室说出的真相 ♪ 可收听
1971年津巴多的监狱实验,以“普通大学生6天就变成残暴狱警”的故事写进了教科书,也拍成了电影。可原始资料并没有发表在顶级学术期刊上,而是登在一本小刊物里;样本只有24人;2007年的一项检验更发现,招募广告本身就把某类倾向的应募者吸引了过来。2018年蒂博·勒·特克西耶在斯坦福档案室查到的东西还要致命:狱警事先被指导要表现得强硬,而那位象征着精神崩溃的参与者,多年后自己说那是演的。即便如此,情境的力量这一主题并没有被废弃——只是它的证
2026-07-26 · 14 分钟阅读 #psychology#paper-review#social-psychology#replication#research-ethics平均响应时间为什么在撒谎 — 正确读懂 p50、p95 与 p99 ♪ 可收听
平均响应时间只有 80ms 的服务,用户却要等上 3 秒,这种事很常见。本文用数字说明:在长尾分布中平均值究竟隐藏了什么,p50、p95、p99、p99.9 各自回答哪个问题,以及 p99 为什么不是「一百个人里有一个」。文中讲清百分位无法求平均这一决定性事实、由此必须使用直方图的理由,以及 Prometheus histogramquantile 的线性插值误差与选择桶边界的标准。最后整理出应把延迟 SLO 定义为比率而非百分位的实务
2026-07-26 · 15 分钟阅读 #observability#percentile#prometheus#histogram#slo关于变老这件事 — 通念与数据分道扬镳的地方 ♪ 可收听
在多国资料里,生活满意度最低的年龄大约在四十七岁前后,此后大体上升。不过这条U型曲线也面临不小的反驳。本文梳理了流体智力与晶体智力如何分道、卡斯滕森关于剩余时间变短时关系会被整理的理论、贝卡·莱维关于老化自我认知与寿命相关的研究及其局限、创业与获奖数据揭示的太晚了这种感觉的误差,以及力量与睡眠这个物理地基。
2026-07-26 · 18 分钟阅读 #mindset#aging#psychology#life#health分布式追踪真正回答的问题 — 跨度、采样,以及时间到底花在哪里 ♪ 可收听
当「慢」的反馈不断进来、却不知道十个服务里谁是凶手时,你需要的就是追踪。本文从追踪、跨度与上下文传播的结构讲起,梳理出日志和指标在原理上回答不了的问题是什么。文中结合采集器配置,讲清自动埋点覆盖到哪里、哪些位置必须补上手动跨度、头部采样为什么会优先丢掉你最需要的追踪,以及尾部采样如何解决这一点、代价又是什么。接着讲跨消息队列传播上下文时为什么要用链接而不是父子关系,最后给出在真实追踪界面上到底该找什么的排查顺序。
2026-07-26 · 21 分钟阅读 #observability#distributed-tracing#opentelemetry#tail-sampling#performanceHTTP Keep-Alive 与连接复用 — 制造间歇性 502 的超时竞态条件 ♪ 可收听
后端日志里一个错误都没有,却唯独负载均衡器上间歇性地混进 502,这多半是连接复用的竞态条件。就在服务器关闭空闲连接的那一瞬间,客户端往这条连接上写入请求,于是 FIN 与请求擦肩而过。本文整理了为什么后端 keepalive 超时要设得比负载均衡器空闲超时更长、如何用 curl -w 把 namelookup 与 connect 与 appconnect 与 starttransfer 拆开以定位瓶颈、如何用利特尔法则确定连接池大小,
2026-07-26 · 20 分钟阅读 #network#http#performance#load-balancer#tcpdig 能通但应用失败 — 先从 DNS 解析顺序查起 ♪ 可收听
dig 能正常拿到答案而唯独应用找不到名字,这不是 bug 而是结构使然。因为 dig 和 nslookup 根本不经过 /etc/hosts 和 nsswitch.conf,而是直接向解析器发起查询。本文沿着应用真正走过的路径,从 nsswitch.conf 一路追到 systemd-resolved 的存根解析器,并整理如何用 getent 和 resolvectl 复现同一条路径。文中还会讲清 Kubernetes 里 ndots
2026-07-26 · 17 分钟阅读 #network#dns#linux#kubernetes#troubleshooting时间管理的幻觉 — 换了工具,日子为什么还是老样子 ♪ 可收听
如果待办应用已经换过五个,一天却还是原来的样子,问题不在工具,而在承诺的总量。本文梳理了卡尼曼和特沃斯基命名的规划谬误、用外部视角校正日程的方法、帕金森定律与截止日期的真实作用、奥利弗·伯克曼的4000周论点、按认知曲线安排困难工作的方法、日历为什么赢过待办清单,以及用人数和时间给会议算成本的习惯。最后是一份不做清单。
2026-07-26 · 17 分钟阅读 #mindset#productivity#time-management#focus#work如何做出好决定 — 好决定和好结果不是一回事 ♪ 可收听
超级碗最后一传被拦截,所有人都说那是史上最糟的选择。但用结果给决定打分的习惯,几乎抹掉了所有本可以学到的东西。本文梳理了安妮·杜克的结果论、贝索斯划分单向门与双向门的标准、事前验尸与10/10/10、满意化与最大化的区别,以及决定日志。这是一篇关于如何真正提高决定质量、并让它在日后可以被打分的流程的文章。
2026-07-26 · 18 分钟阅读 #mindset#decision-making#psychology#productivity#self-improvementSQL 注入与参数绑定 — 用了 ORM 仍然会被打穿的那些地方 ♪ 可收听
搜索 SQL 注入的对策,最先跳出来的往往是转义函数,但正确答案是参数绑定。转义是试图让值在字符串字面量里变得安全,而绑定是让值根本不进入 SQL 文本的结构性分离。本文用日志确认预处理语句在服务端究竟是怎样被解析和执行的,再用 Python 和 JavaScript 代码展示即使用了 ORM 也会被打穿的三个地方,以及 ORDER BY 或表名这类根本无法绑定的位置该如何处理。文章还会覆盖 LIKE 子句的通配符、保存下来的值日后才引
2026-07-26 · 22 分钟阅读 #security#sql#database#orm#python历史小说究竟能编到哪一步 — 事实与虚构之间的契约 ♪ 可收听
历史小说是带着一纸静悄悄的契约开场的:已知的部分绝不去动,只填补记录留白的位置。事实、解释与创作这三层结构,考据做得越完美反而越没人读的悖论,希拉里·曼特尔的《狼厅》如何只靠挪动一个视角就翻转了人物形象,把当代价值观移植进过去会出什么问题,以及书写真实人物与集体记忆时的分量 — 全文整理如上。不含剧透,文末附有入门路线。
2026-07-26 · 17 分钟阅读 #storytelling#historical-fiction#fiction#narrative#history损失比获得痛两倍 — 前景理论原文与此后的45年 ♪ 可收听
“人感受到的损失之痛,是获得之喜的两倍”这句话,如今是谈判教材和定价方案里的常客。可是翻开出处——卡尼曼与特沃斯基1979年发表在《计量经济学》上的论文——真正的材料只是抛给以色列大学生的几道假想赌局题,外加一张回答比例表。那个著名的“两倍”并不出自1979年,而是1992年一项以25名研究生为对象的后续研究的中位数;2018年之后,还出现了认为损失规避被夸大的重新检验。我们用代码看看一个损失规避系数如何让期望值为正的赌局被拒绝,并分开
2026-07-26 · 18 分钟阅读 #psychology#paper-review#behavioral-economics#decision-making#moneyRAG 答非所问时 — 区分检索失败与生成失败的调试流程 ♪ 可收听
RAG 给出错误答案时,多数人先去改提示,但真实原因大多出在检索阶段。本文先给出一次实验就能把检索失败与生成失败切开的流程——把正确分块直接手动喂进去,然后讲清为什么分块是最常见的凶手、嵌入相似度与语义相似度分道扬镳的地方、混入 BM25 常常获胜的理由、重排序值回票价的条件,以及给分块加上文档标题和元数据后的效果。最后附上构建黄金集并测量 recall@k 与答案包含率的代码。
2026-07-26 · 18 分钟阅读 #llm#rag#retrieval#chunking#evaluation明知结局还是读得下去 — 类型浪漫小说的文法 ♪ 可收听
浪漫小说是唯一一个结局早已定好的大众类型。可那不是弱点,而是与读者签下的契约。本文梳理了 HEA 与 HFN 这两条类型约定、帕梅拉·雷吉斯归纳的八个要素及其核心的障壁、从敌人变恋人到契约恋爱这五种套路各自制造的不同张力、双视角为何成为标准,以及用误会搭起来的冲突为何会垮、价值观的碰撞为何扛得住。此外还谈到《傲慢与偏见》为何两百年来一直是结构教科书,以及韩国罗曼奇幻做出的变形。不透露任何作品的结局。
2026-07-26 · 19 分钟阅读 #storytelling#romance#fiction#narrative#cultureOOM Killer 杀掉进程之后 — 从解读 dmesg 日志到区分 cgroup OOM ♪ 可收听
进程没有留下任何日志就消失了,退出码是 137。本文整理如何逐行阅读内核 OOM Killer 留下的 dmesg 报告、badness 分数是怎么算出来的以及为什么被杀的往往不是最大的那个进程,还有如何仅凭日志区分系统全局 OOM 和 cgroup v2 memory.max 引发的容器 OOM。同时覆盖 overcommitmemory 0/1/2 到底改变了什么、"有 swap 就不会 OOM"这个误解为什么是错的,以及如何用 e
2026-07-26 · 22 分钟阅读 #linux#memory#oom#cgroups#kubernetesLLM 推理显存计算法 — 比权重先爆的是 KV cache ♪ 可收听
整理了用几次乘法回答“这个模型能装进我们的 GPU 吗”的方法。权重内存用参数量乘以每参数字节数就算完了,但真正挡住部署的是随序列长度和批大小一起长大的 KV cache。本文用数字讲清 KV cache 公式、GQA 把它压到几分之一的原理、预填充激活与框架开销的量级、PagedAttention 消除的碎片损失,以及 4bit 量化并不免费的理由,并附上一个从现有显存反推可并发序列数的计算器函数。
2026-07-26 · 16 分钟阅读 #llm#inference#vram#kv-cache#quantization容器镜像漏洞扫描结果怎么读 — 把几百个 Critical 变成 0 的实际做法 ♪ 可收听
第一次跑镜像扫描器,会吐出几千条漏洞,其中相当一部分是 Critical。把这份报告原封不动丢给团队,结果是什么都不会发生。本文从一个事实出发:扫描器实际做的只是把已安装的包清单和 CVE 数据库对一遍。由此解释厂商回移补丁造成的误报、为什么必须参考发行版的安全公告,以及应用代码里的漏洞压根就看不见这一局限。文章会讲清为什么不能只看 CVSS 分数、如何把 EPSS 和 KEV 这类真实利用指标一起读,并用命令和输出展示:消掉几千条漏洞
2026-07-26 · 17 分钟阅读 #security#container#docker#trivy#kubernetes