Почему мы строим на Cloudflare
Коротко о главном
Заголовок раздела «Коротко о главном»Пакет nextpdf/cloudflare позволяет NextPDF
рендерить PDF на границе сети, архивировать созданные файлы в R2 и фильтровать
запросы к API ещё до того, как они дойдут до воркера. Остальные страницы этого
раздела подробно рассказывают, как именно. Эта — про другое: это короткая и
честная причина, почему нам вообще было так интересно за это браться, — и наше
спасибо.
Почему Cloudflare
Заголовок раздела «Почему Cloudflare»Скажем прямо: команда NextPDF любит работать на Cloudflare. Это платформа, к которой мы обращаемся с удовольствием, и её по-настоящему щедрый бесплатный тариф — во многом причина тому. И эта щедрость для нас не пустяк: именно она позволяет небольшой команде больше отдавать сообществу open source, чем получилось бы иначе, — больше открытого кода в самом движке, больше времени на то, что полезно всем, и меньше решений, продиктованных стоимостью инфраструктуры, а не благом проекта. Когда платформа так опускает планку входа, всё, что строится поверх неё, может позволить себе быть смелее.
Что становится возможным
Заголовок раздела «Что становится возможным»Вот этой частью нам по-настоящему хочется поделиться, потому что, как нам кажется, она открывает новые двери. С NextPDF на Cloudflare ваше PHP-приложение держит HTML, а Cloudflare Worker держит headless-браузер: мост отправляет разметку и получает обратно готовые байты PDF, так что никакому headless-Chromium не нужно работать внутри вашего PHP-процесса вовсе. Дальше можно архивировать созданные файлы в R2 и возвращать подписанные ссылки, а входящие запросы к API фильтровать на уровне пакета ещё до того, как они дойдут до вашего воркера.
Это небольшой пакет, который хорошо делает одно чёткое дело, и мы собрали его внимательно. Но передать его вам нам не терпелось не из-за кода — а из-за вопроса, который за ним стоит: когда такой мощный движок PDF встречает такую же мощную платформу, какие более глубокие, масштабные и интересные вещи начинают строить люди? Вряд ли мы представили себе их все. В этом-то и вся соль. Начните с обзора или быстрого старта и посмотрите, куда это вас заведёт.
Сделано с заботой
Заголовок раздела «Сделано с заботой»Отправлять HTML из своего процесса, чтобы он рендерился где-то ещё, — это граница доверия, и мы отнеслись к ней именно так. Мост проверяет, куда запросу вообще позволено идти, прежде чем что-либо отправить, в духе рекомендаций OWASP по защите от подделки запросов на стороне сервера, а его транспорт может закреплять ровно тот открытый ключ, который ожидает увидеть (RFC 7469). Подробности — проверка URL, ограничения на размер, закрепление ключа и управление доступом к R2 — собраны на странице Безопасность и эксплуатация Cloudflare.
Спасибо, Cloudflare
Заголовок раздела «Спасибо, Cloudflare»Скажем прямо: спасибо. Щедрый бесплатный тариф и надёжная платформа помогли нам проще держать NextPDF открытым, а разработчикам, читающим эти строки, — проще попробовать что-то смелое, не отдавая решение на откуп счёту.
Сам этот сайт документации отдаётся через Cloudflare — так что, если вы читаете его сейчас, вы видите это на практике.
Смотрите также
Заголовок раздела «Смотрите также»- NextPDF Cloudflare — раздел целиком.
- Обзор — что делает мост и где его границы.
- Быстрый старт — ваш первый PDF, отрендеренный на границе сети.
- Безопасность и эксплуатация Cloudflare — граница доверия во всех деталях.
Cloudflare, а также связанные названия продуктов, такие как Cloudflare Workers и R2, являются товарными знаками Cloudflare, Inc. и используются здесь лишь для того, чтобы описать, как NextPDF взаимодействует с платформой. NextPDF — независимый проект, не имеющий корпоративной связи с Cloudflare, Inc., и не одобрен и не спонсируется Cloudflare.