<?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>Backend &amp; Infrastructure on Intent</title>
    <link>https://intent.me/en-us/blog/categories/backend-infra/</link>
    <description>Recent content in Backend &amp; Infrastructure on Intent</description>
    <generator>Hugo -- 0.155.1</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 25 Aug 2026 12:00:00 +0800</lastBuildDate>
    <atom:link href="https://intent.me/en-us/blog/categories/backend-infra/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Windows Docker Ghost Port Mapping: EMQX 1883 Silently Reserved by WinNAT Postmortem</title>
      <link>https://intent.me/en-us/blog/tech/docker-windows-port-ghost-mapping-postmortem/</link>
      <pubDate>Tue, 25 Aug 2026 12:00:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/docker-windows-port-ghost-mapping-postmortem/</guid>
      <description>Docker Desktop on Windows with a full stack (backend + EMQX 5.8.9 + TimescaleDB + Valkey). Backend ping/pong works, but mosquitto_pub keeps returning Connection refused. Other ports in docker ps map fine; only 1883 lacks the 0.0.0.0:1883-&amp;gt; prefix and Docker reports no error. Root cause: Hyper-V/WinNAT dynamic port reservation holds 1883 (in the 1802–1901 range). Four remediation options: swap port, temporary reclaim, admin allowlist, fix the dynamic port range.</description>
    </item>
    <item>
      <title>Rootless Container Inbound Source IP Preservation: Hybrid Host-Bridge Topology and Tradeoff Analysis</title>
      <link>https://intent.me/en-us/blog/tech/rootless-container-source-ip-preservation/</link>
      <pubDate>Sat, 11 Jul 2026 20:00:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/rootless-container-source-ip-preservation/</guid>
      <description>Architecture analysis and implementation of inbound source IP preservation under Rootless Podman. Uses a Hybrid Host-Bridge topology to retain real client IPs at edge services while preserving network isolation for internal services, with tradeoff analysis, implementation details, and verification methodology.</description>
    </item>
    <item>
      <title>Troubleshooting H.265 HTTP-FLV Browser Streaming on an IIoT Platform</title>
      <link>https://intent.me/en-us/blog/tech/h265-http-flv-browser-stream-debugging/</link>
      <pubDate>Sun, 28 Jun 2026 21:30:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/h265-http-flv-browser-stream-debugging/</guid>
      <description>This post documents an H.265 HTTP-FLV browser streaming issue on an IIoT platform, from playback URL validation and desktop player compatibility checks to local FLV baseline verification and correlating &lt;code&gt;fetchError&lt;/code&gt;, &lt;code&gt;WinError 10053&lt;/code&gt;, and a frontend &lt;code&gt;TypeError&lt;/code&gt; into a reusable debugging SOP.</description>
    </item>
    <item>
      <title>IIoT Ingress Postmortem: Troubleshooting EMQX 5.8 Under Podman Rootless</title>
      <link>https://intent.me/en-us/blog/tech/iiot-emqx-rootless-deployment-postmortem/</link>
      <pubDate>Thu, 28 May 2026 18:59:25 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/iiot-emqx-rootless-deployment-postmortem/</guid>
      <description>A postmortem of an IIoT ingress deployment failure: under Podman Rootless, EMQX 5.8 exposed unstable Erlang IPC, HOCON schema validation failures, a blocked security-group port, and M2M requests rejected by CSRF middleware. This post covers the confirmed causes, fixes, and validation path.</description>
    </item>
    <item>
      <title>Rootless Podman &#43; Systemd Supervision Failure Postmortem: Diagnosing and Repairing a Broken Recovery Path</title>
      <link>https://intent.me/en-us/blog/tech/rootless-podman-systemd-watchdog-postmortem/</link>
      <pubDate>Fri, 03 Apr 2026 20:00:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/rootless-podman-systemd-watchdog-postmortem/</guid>
      <description>A postmortem on a failed recovery path under Rootless Podman + Systemd user units, covering confirmed contributing factors, concrete remediation work, validation steps, and remaining risks.</description>
    </item>
    <item>
      <title>JWT Dual-Token Hardening Postmortem: From Stateless Refresh to Revocable Redis Sessions</title>
      <link>https://intent.me/en-us/blog/tech/jwt-at-rt-redis-hardening-postmortem/</link>
      <pubDate>Mon, 23 Mar 2026 10:00:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/jwt-at-rt-redis-hardening-postmortem/</guid>
      <description>A security hardening postmortem for JWT AT/RT architecture: treating Redis reservation as completed and implementing RT rotation, replay detection, and revocable sessions.</description>
    </item>
    <item>
      <title>HTTPS Upgrade Triggered 403: A Deep Postmortem from Security Middleware to Container Isolation</title>
      <link>https://intent.me/en-us/blog/tech/https-upgrade-403-postmortem/</link>
      <pubDate>Tue, 17 Mar 2026 12:00:00 +0800</pubDate>
      <guid>https://intent.me/en-us/blog/tech/https-upgrade-403-postmortem/</guid>
      <description>A postmortem on a persistent 403 after HTTPS migration, traced to both missing CSRF allowlist updates and Podman Rootless image namespace isolation.</description>
    </item>
  </channel>
</rss>
