<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Go on Hanh Pham's Blog</title><link>https://hanhpham.vercel.app/tags/go/</link><description>Recent content in Go on Hanh Pham's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 02 Oct 2026 09:00:00 +0700</lastBuildDate><atom:link href="https://hanhpham.vercel.app/tags/go/index.xml" rel="self" type="application/rss+xml"/><item><title>Docker BuildKit in CI: The Economics of Network I/O vs CPU Compilation</title><link>https://hanhpham.vercel.app/posts/docker-buildkit-caching-economics-in-ci/</link><pubDate>Fri, 02 Oct 2026 09:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/docker-buildkit-caching-economics-in-ci/</guid><description>Enabling remote layer caching in CI often slows builds down instead of speeding them up. Here is how network transit limits, cache thrashing, and local NVMe runners dictate the real economics of container builds.</description></item><item><title>CFS Quota Throttling &amp; Silent OOMKills: The Fallacy of Kubernetes CPU Limits</title><link>https://hanhpham.vercel.app/posts/kubernetes-cfs-cpu-throttling-and-resource-limits/</link><pubDate>Mon, 28 Sep 2026 09:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/kubernetes-cfs-cpu-throttling-and-resource-limits/</guid><description>Setting hard CPU limits on latency-sensitive microservices destroys p99 response times while average utilization appears deceptively low. Here is how Linux CFS quotas, Go GOMAXPROCS, and GOMEMLIMIT actually behave under load.</description></item><item><title>Go 1.27 Is Quietly Load-Bearing</title><link>https://hanhpham.vercel.app/posts/go-1-27-is-quietly-load-bearing/</link><pubDate>Fri, 04 Sep 2026 10:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/go-1-27-is-quietly-load-bearing/</guid><description>Generic methods finally landed, json/v2 is already running underneath your code, and the allocator got faster while you weren&amp;rsquo;t looking. Six of this release&amp;rsquo;s changes take effect without you opting in; here&amp;rsquo;s which ones will cost you an afternoon.</description></item><item><title>Go Performance Profiling with pprof: Finding the Slow Part</title><link>https://hanhpham.vercel.app/posts/go-performance-profiling-with-pprof/</link><pubDate>Sat, 01 Aug 2026 10:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/go-performance-profiling-with-pprof/</guid><description>Your Go service is slow, but you don&amp;rsquo;t know where. Guessing is not a strategy. pprof tells you exactly where your program spends its time, memory, and CPU; here&amp;rsquo;s how to use it.</description></item><item><title>Caching Geospatial Queries Without a Specialized Geo Database</title><link>https://hanhpham.vercel.app/posts/caching-geospatial-queries-without-a-geo-database/</link><pubDate>Thu, 23 Jul 2026 15:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/caching-geospatial-queries-without-a-geo-database/</guid><description>You don&amp;rsquo;t need PostGIS or a geohash library to cache repeat road-distance lookups: rounding coordinates and a unique index gets you most of the win.</description></item><item><title>Self-Hosting a Routing Engine Instead of Paying Per API Call</title><link>https://hanhpham.vercel.app/posts/self-hosting-a-routing-engine/</link><pubDate>Tue, 21 Jul 2026 14:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/self-hosting-a-routing-engine/</guid><description>Road distance, not straight-line distance, is what travel expense claims and delivery pricing actually need, here&amp;rsquo;s how to get it without a metered maps API.</description></item><item><title>Syntax Highlighting with Hugo</title><link>https://hanhpham.vercel.app/posts/hugo-code-blocks-demo/</link><pubDate>Thu, 16 Jul 2026 10:00:00 +0700</pubDate><guid>https://hanhpham.vercel.app/posts/hugo-code-blocks-demo/</guid><description>Hugo ships with built-in syntax highlighting via Chroma, no plugins required.</description></item></channel></rss>