Telegram — лонгриды

gotenberg

Изображение из Telegram поста
gotenberg

Многие советуют Gotenberg как «просто запусти Docker и получи PDF из чего угодно». Я — нет. Не советую.

Снаружи это аккуратный Go-API в контейнере. Под капотом — тяжёлый браузерный зоопарк: Node и древний Selenium-стек вокруг Chromium. Ты думаешь, что подключил лёгкий сервис конвертации, а на самом деле поднимаешь ферму headless-браузера с LibreOffice в придачу.

Минусы на практике:
— образ на 1–2 ГБ, потому что тащат полный Chromium и LibreOffice;
— жрёт RAM: на конкурентных конвертах легко уйти в гигабайты и ловить OOM / memory leak;
— отдельный микросервис: HTTP, очереди, рестарты Chromium, мониторинг здоровья — это уже ops, а не «одна библиотека»;
— апдейт контейнера = новый Chromium → вёрстка PDF может тихо поплыть;
— для простых HTML→PDF это overkill.

Что брать вместо:
— Playwright — если нужен настоящий браузерный рендер (JS, сложная вёрстка), но контролируешь его сам;
— WeasyPrint — лёгкий HTML/CSS→PDF без браузера, когда достаточно нормальной вёрстки документов;
— Folio (https://github.com/carlos7ags/folio) — если пишешь на Go: layout engine, HTML→PDF in-process, без subprocess, без headless browser и без отдельного сервиса.

Короче: Gotenberg удобно выглядит в README, но я бы не тащил это в прод ради «ещё одного контейнера с Selenium внутри».

https://github.com/gotenberg/gotenberg

#сервисы

Вам также может понравиться