<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>Инженерные заметки</title><link>https://romefell.org/</link><description>Личная база знаний по разработке, Linux, Docker и DevOps</description><language>ru</language><item><title>Caddy как reverse proxy с автоматическим TLS</title><link>https://romefell.org/articles/caddy-reverse-proxy-tls.html</link><guid>https://romefell.org/articles/caddy-reverse-proxy-tls.html</guid><description>Как поднять обратный прокси на Caddy, который сам выпускает и продлевает сертификаты Let&#x27;s Encrypt, и отдать несколько сайтов с одного сервера.</description></item><item><title>Деплой FastAPI-приложения через Docker Compose</title><link>https://romefell.org/articles/docker-compose-fastapi.html</link><guid>https://romefell.org/articles/docker-compose-fastapi.html</guid><description>Рабочий шаблон из Dockerfile и docker-compose.yml для FastAPI: сборка образа, тома для данных, политика рестарта и обратный прокси.</description></item><item><title>Читаем EXPLAIN ANALYZE в PostgreSQL</title><link>https://romefell.org/articles/postgres-explain-analyze.html</link><guid>https://romefell.org/articles/postgres-explain-analyze.html</guid><description>Как понять, почему запрос медленный: seq scan против index scan, чтение плана и типичные ошибки, из-за которых индекс не используется.</description></item><item><title>Свой фоновый сервис на systemd</title><link>https://romefell.org/articles/linux-systemd-services.html</link><guid>https://romefell.org/articles/linux-systemd-services.html</guid><description>Как оформить любую программу как системный сервис: unit-файл, автозапуск, перезапуск при падении и просмотр логов через journalctl.</description></item><item><title>Асинхронные HTTP-запросы в Python с httpx</title><link>https://romefell.org/articles/python-asyncio-httpx.html</link><guid>https://romefell.org/articles/python-asyncio-httpx.html</guid><description>Когда нужно дёрнуть сотню эндпоинтов, синхронный requests тратит время на ожидание. Разбираем httpx.AsyncClient, asyncio.gather и таймауты.</description></item></channel></rss>
