<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>山维空间</title>
	<atom:link href="https://blog.meathill.com/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.meathill.com</link>
	<description>肉山的生活记录和技术分享</description>
	<lastBuildDate>Mon, 20 Jul 2026 03:10:51 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>

<image>
	<url>https://i0.wp.com/blog.meathill.com/wp-content/uploads/2014/12/meathill-5493c7abv1_site_icon.png?fit=32%2C32&#038;ssl=1</url>
	<title>山维空间</title>
	<link>https://blog.meathill.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">24827218</site>	<item>
		<title>Next.js 在 Cloudflare Workers 上生成 OG 图：Satori、缓存与 2026 预热实践</title>
		<link>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image-2026-refresh.html</link>
					<comments>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image-2026-refresh.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Mon, 20 Jul 2026 03:10:51 +0000</pubDate>
				<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[Cloudflare Workers]]></category>
		<category><![CDATA[next.js]]></category>
		<category><![CDATA[OG Image]]></category>
		<category><![CDATA[r2]]></category>
		<category><![CDATA[Satori]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/nextjs-cloudflare-workers-og-image-2026-refresh.html</guid>

					<description><![CDATA[在 Cloudflare Workers 上为 Next.js 生成 Open Graph 图片：Satori/resvg 限制、冷启动与 CPU 时间、R2/CDN 缓存与发布时预热，附可复制的 route 结构与避坑清单（2026）。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image-2026-refresh.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3700529</post-id>	</item>
		<item>
		<title>TiDB 账单爆炸之后：一次跌宕起伏的降本排查，从 Cloudflare 边缘到数据库计费内核，降本$30/月</title>
		<link>https://blog.meathill.com/tidb/tidb-ru-bill-explosion-investigation.html</link>
					<comments>https://blog.meathill.com/tidb/tidb-ru-bill-explosion-investigation.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Thu, 16 Jul 2026 03:53:44 +0000</pubDate>
				<category><![CDATA[tidb]]></category>
		<category><![CDATA[APCu]]></category>
		<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[Headless CMS]]></category>
		<category><![CDATA[serverless]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[降本]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/tidb-ru-bill-explosion-investigation.html</guid>

					<description><![CDATA[博客的 TiDB 账单逼近限额，RU 基线常年 110+。我用两天逐层排查：边缘缓存、漏洞扫描器、WordPress 对象缓存、连接税、TiFlash 副本、演示数据……一个接一个假设被数据打脸。把能控制的部分从 110 压到接近 0 之后，剩下的真相是：有些账，不在你这一侧。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/tidb/tidb-ru-bill-explosion-investigation.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3670539</post-id>	</item>
		<item>
		<title>再次阴沟翻船：在 Cloudflare 上搭建 Payload CMS，又连踩五个坑</title>
		<link>https://blog.meathill.com/cloudflare/payload-cms-on-cloudflare-five-pitfalls.html</link>
					<comments>https://blog.meathill.com/cloudflare/payload-cms-on-cloudflare-five-pitfalls.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Sat, 27 Jun 2026 03:05:42 +0000</pubDate>
				<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[Cloudflare Workers]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[opennext]]></category>
		<category><![CDATA[payload-cms]]></category>
		<category><![CDATA[r2]]></category>
		<category><![CDATA[sharp]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/payload-cms-on-cloudflare-five-pitfalls.html</guid>

					<description><![CDATA[近期想给拜拜更换 Payload CMS，于是再次在 Cloudflare Workers 上搭建 Payload CMS + OpenNext。没想到又阴沟翻船，连续踩中构建、R2、sharp、版本对齐和兼容性日期等五个坑。AI 有随机性，我们要增加确定性应对。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/cloudflare/payload-cms-on-cloudflare-five-pitfalls.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3670537</post-id>	</item>
		<item>
		<title>Cloudflare Email Worker 踩坑实录：三个你一定会遇到的问题</title>
		<link>https://blog.meathill.com/cloudflare/cloudflare-email-worker-three-pitfalls.html</link>
					<comments>https://blog.meathill.com/cloudflare/cloudflare-email-worker-three-pitfalls.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Sun, 14 Jun 2026 07:23:38 +0000</pubDate>
				<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[email-routing]]></category>
		<category><![CDATA[email-worker]]></category>
		<category><![CDATA[r2]]></category>
		<category><![CDATA[备份]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/cloudflare-email-worker-three-pitfalls.html</guid>

					<description><![CDATA[记录在用 Cloudflare Email Worker 处理邮件时遇到的三个常见坑：不能转发到同一 Worker、目标地址需验证、以及 message.raw 只能读一次，并给出用 R2 缓存 .eml 的解决方案。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/cloudflare/cloudflare-email-worker-three-pitfalls.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3670535</post-id>	</item>
		<item>
		<title>Mui 简历出了第一单！</title>
		<link>https://blog.meathill.com/%e4%ba%a7%e5%93%81%e6%97%a5%e5%bf%97/first-order-of-muicv.html</link>
					<comments>https://blog.meathill.com/%e4%ba%a7%e5%93%81%e6%97%a5%e5%bf%97/first-order-of-muicv.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Wed, 20 May 2026 15:38:02 +0000</pubDate>
				<category><![CDATA[产品日志]]></category>
		<category><![CDATA[AI 求职]]></category>
		<category><![CDATA[Build in Public]]></category>
		<category><![CDATA[Mui 简历]]></category>
		<category><![CDATA[独立产品]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/first-order-of-muicv.html</guid>

					<description><![CDATA[第一笔订单最重要的不是收入，而是信号：有人真的需要一个从简历制作、模拟面试、面试复盘到入职辅导都能陪跑的 AI 求职平台。我会再接再厉，做最好用的 AI求职陪跑工具。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/%e4%ba%a7%e5%93%81%e6%97%a5%e5%bf%97/first-order-of-muicv.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640525</post-id>	</item>
		<item>
		<title>独立开发周记 · 2026-05-04 → 2026-05-10</title>
		<link>https://blog.meathill.com/indie-hacker/indie-hack-weekly-2026-05-10.html</link>
					<comments>https://blog.meathill.com/indie-hacker/indie-hack-weekly-2026-05-10.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Tue, 12 May 2026 14:04:36 +0000</pubDate>
				<category><![CDATA[indie-hacker]]></category>
		<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[free-ai-api]]></category>
		<category><![CDATA[i18n]]></category>
		<category><![CDATA[muicv]]></category>
		<category><![CDATA[独立开发]]></category>
		<category><![CDATA[语音输入]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/indie-hack-weekly-2026-05-10.html</guid>

					<description><![CDATA[一周九个项目并行，共189个 commit。muicv 快速迭代完善语音输入与本地/云同步，free-ai-api 批量接入多家模型并扩展到6语，多个新项目上线 Cloudflare。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/indie-hacker/indie-hack-weekly-2026-05-10.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640523</post-id>	</item>
		<item>
		<title>独立开发周报：把 AI 产品推进到可用闭环（2026.04.27-05.03）</title>
		<link>https://blog.meathill.com/%e7%8b%ac%e7%ab%8b%e5%bc%80%e5%8f%91/indie-dev-weekly-2026-04-27-05-03.html</link>
					<comments>https://blog.meathill.com/%e7%8b%ac%e7%ab%8b%e5%bc%80%e5%8f%91/indie-dev-weekly-2026-04-27-05-03.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Wed, 06 May 2026 16:23:32 +0000</pubDate>
				<category><![CDATA[独立开发]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[MCP]]></category>
		<category><![CDATA[Mui简历]]></category>
		<category><![CDATA[叨叨记]]></category>
		<category><![CDATA[周报]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/indie-dev-weekly-2026-04-27-05-03.html</guid>

					<description><![CDATA[2026-04-27 到 2026-05-03 的独立开发记录：Mui简历成为主线，同时推进叨叨记、Free AI API、MUI Router、MuiAD、个人网站 MCP 和 AI 跑团工具。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/%e7%8b%ac%e7%ab%8b%e5%bc%80%e5%8f%91/indie-dev-weekly-2026-04-27-05-03.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640521</post-id>	</item>
		<item>
		<title>姆伊RPG 的第一份战报：驻马店驱魔人</title>
		<link>https://blog.meathill.com/life/game/muirpg-first-battle-report-zhumadian-exorcist.html</link>
					<comments>https://blog.meathill.com/life/game/muirpg-first-battle-report-zhumadian-exorcist.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Mon, 04 May 2026 02:24:22 +0000</pubDate>
				<category><![CDATA[游戏]]></category>
		<category><![CDATA[agents]]></category>
		<category><![CDATA[exorcism]]></category>
		<category><![CDATA[muirpg]]></category>
		<category><![CDATA[playtest]]></category>
		<category><![CDATA[rpg]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/muirpg-first-battle-report-zhumadian-exorcist.html</guid>

					<description><![CDATA[A playtest report of MuiRPG: in rural Zhumadian a religious-affairs officer uses investigation, skills, and a literal physical strike to stop a cult ritual and...]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/life/game/muirpg-first-battle-report-zhumadian-exorcist.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640519</post-id>	</item>
		<item>
		<title>Next.js + Cloudflare Workers 上的 OG Image 完全指南：从零到生产</title>
		<link>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image.html</link>
					<comments>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 03:34:32 +0000</pubDate>
				<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[Cloudflare Workers]]></category>
		<category><![CDATA[next.js]]></category>
		<category><![CDATA[OG Image]]></category>
		<category><![CDATA[opennext]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/nextjs-cloudflare-workers-og-image.html</guid>

					<description><![CDATA[Next.js 16 + OpenNext + Cloudflare Workers 上从零搭建 OG image 体系的完整教程与避坑笔记。]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/cloudflare/nextjs-cloudflare-workers-og-image.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640515</post-id>	</item>
		<item>
		<title>Next.js 图片怎么这么贵？！——Cloudflare 原生 Image Resizing 避坑与最佳实践</title>
		<link>https://blog.meathill.com/cloudflare/nextjs-images-why-so-expensive-cloudflare-image-resizing-pitfalls-best-practices.html</link>
					<comments>https://blog.meathill.com/cloudflare/nextjs-images-why-so-expensive-cloudflare-image-resizing-pitfalls-best-practices.html#respond</comments>
		
		<dc:creator><![CDATA[meathill]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 09:46:06 +0000</pubDate>
				<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[caching]]></category>
		<category><![CDATA[image-resizing]]></category>
		<category><![CDATA[nextjs]]></category>
		<category><![CDATA[opennext]]></category>
		<guid isPermaLink="false">https://blog.meathill.com/tech/nextjs-images-why-so-expensive-cloudflare-image-resizing-pitfalls-best-practices.html</guid>

					<description><![CDATA[Why Next.js default image optimization on Cloudflare can spike your bill and how to use a custom loader with Cloudflare Image Resizing, cache rules and Cache Re...]]></description>
		
					<wfw:commentRss>https://blog.meathill.com/cloudflare/nextjs-images-why-so-expensive-cloudflare-image-resizing-pitfalls-best-practices.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3640511</post-id>	</item>
	</channel>
</rss>
