Catch up on everthing we announced at this year's Firebase Summit. Learn more

Обслуживайте динамический контент и размещайте микросервисы с помощью Firebase Hosting

Firebase Hosting интегрируется с вариантами бессерверных вычислений, включая облачные функции для Firebase и Cloud Run. Используя хостинг Firebase с этими параметрами, вы можете размещать микросервисы, направляя запросы HTTPS для запуска ваших функций и контейнерных приложений в управляемой безопасной среде.

Облако Функция Firebase : Вы пишете и развернуть функцию, которая BACKEND кода , который реагирует на триггер конкретного. Затем, используя хостинг Firebase, вы можете направлять запросы HTTPS для запуска вашей функции.

Облако Run : Вы пишете и развернуть приложение , упакованные в контейнер изображения. Затем, используя хостинг Firebase, вы можете направлять запросы HTTPS для запуска вашего контейнерного приложения.

Случаи применения

Как вы можете использовать варианты бессерверных вычислений с Firebase Hosting?

  • Подавать динамический контент - В дополнении к обслуживанию контента статического на вашем хостинг сайта, вы можете служить динамически генерируемыми ответы от функции или контейнерного приложения , которое выполняет логику на сторону сервера.

    Например, вы можете указать шаблон URL (например , /blog/<blog-post-id> ) для функции , которая использует блог пост параметр ID URL , чтобы извлечь содержимое динамически из базы данных.

  • Сборка REST API , - Вы можете создать microservice API , используя функцию.

    Например, функции могут обрабатывать функции входа на ваш веб-сайт. В то время как ваш веб - сайт размещен на / , любой запрос к /api перенаправляются на ваш microservice API. Для примера, проверьте это с открытым исходным кодом образца .

  • Кэш динамического контента - Вы можете настроить кэширование вашего контента динамического на глобальной CDN.

    Например, если функция генерирует новый контент только периодически, вы можете ускорить работу своего приложения, кэшируя сгенерированный контент хотя бы на короткий период времени. Вы также можете потенциально снизить затраты на выполнение, поскольку контент обслуживается из CDN, а не через запускаемую функцию или контейнерное приложение.

  • Предварительно обрабатывать ваше одной страницы приложения - Вы можете улучшить SEO и обмен оптимизировать через различную социальную сеть путем создания динамического meta - тег. Чтобы узнать больше, посмотрите это видео или проверить это с открытым исходным кодом образца .

Выбор бессерверного варианта

В то время как функции Облака для Firebase и Cloud Run интегрируются с Firebase хостинга и предлагают полностью управляемый, автомасштабирование и безопасную среду бессерверной, два варианта может быть использован для различных случаев применения и желаемого уровень заказной конфигурации.

В следующей таблице описаны некоторые основные соображения по использованию облачных функций для Firebase по сравнению с Cloud Run. Для получения полного списка квот, лимитов и показателей, обратитесь к подробной документации каждого продукта ( облачные функции для Firebase или Cloud Run ).

Рассмотрение Облачные функции для Firebase Cloud Run
Настраивать Интерфейс командной строки Firebase объединяет несколько задач в отдельные команды, от инициализации до сборки и развертывания. Контейнеры предлагают больше настраиваемых параметров, поэтому задачи настройки, сборки и развертывания включают отдельные шаги.
Среда выполнения Требуется Node.js, но вы можете указать , какую версию о Node.js для использования ( в настоящее время, версия 10 или 12). При создании вашего контейнера , необходимо указать среды выполнения.
Поддержка языков и фреймворков

JavaScript и TypeScript

Поддерживаются веб-фреймворки, такие как Express.js.

Любой язык, поддержка Dockerfiles, включая Go, Node.js, Python, Java и других

Поддерживаются веб-фреймворки для каждого языка.

Тайм-аут для запроса хостинга 60 секунд (см. Примечание ниже) 60 секунд (см. Примечание ниже)
Параллелизм 1 запрос на экземпляр функции
(без параллелизма для каждого экземпляра)
80 одновременных запросов на экземпляр контейнера
Биллинг Использование облачных функций

Бесплатная квота использования, но счет Billing Облака требуется. См Firebase FAQ .

Использование Облако Run + Контейнер для хранения реестра

Свободное использование квоты, но счет Billing Облако требуется