<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Context on PlumePHP</title><link>https://plumephp.com/tags/context/</link><description>Recent content in Context on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Thu, 23 May 2024 11:21:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/context/index.xml" rel="self" type="application/rss+xml"/><item><title>Go database/sql 上下文入门：QueryContext、超时和连接释放</title><link>https://plumephp.com/go-sql-query-context-2024/</link><pubDate>Thu, 23 May 2024 11:21:00 +0800</pubDate><guid>https://plumephp.com/go-sql-query-context-2024/</guid><description>&lt;p&gt;&lt;code&gt;database/sql&lt;/code&gt; 是 Go 标准库里非常重要的包。它的 API 看起来不复杂，但初学者常常在几个地方踩坑：查询没有超时、忘记关闭 &lt;code&gt;Rows&lt;/code&gt;、把 &lt;code&gt;context.Background()&lt;/code&gt; 写在仓储层、扫描错误处理不完整。短期看只是代码能不能跑，长期看会影响连接池、请求取消和线上稳定性。&lt;/p&gt;</description></item><item><title>Go 超时和重试入门：context、退避和幂等性一起看</title><link>https://plumephp.com/go-timeout-retry-backoff-2024/</link><pubDate>Thu, 11 Apr 2024 14:08:00 +0800</pubDate><guid>https://plumephp.com/go-timeout-retry-backoff-2024/</guid><description>&lt;p&gt;写后端服务时，外部调用失败是常态。网络会抖，依赖会慢，网关会返回 502，数据库也可能短暂不可用。初学者最容易写出两种极端代码：一种完全不重试，偶发错误直接暴露给用户；另一种无脑重试很多次，把一个小抖动放大成更大的压力。正确做法不是“永远重试”或“永不重试”，而是把超时、退避和幂等性一起考虑。&lt;/p&gt;</description></item></channel></rss>