Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Облачные функции для Firebase

Облачные функции для Firebase - это бессерверная среда, которая позволяет автоматически запускать серверный код в ответ на события, запускаемые функциями Firebase и запросами HTTPS. Ваш код JavaScript или TypeScript хранится в облаке Google и работает в управляемой среде. Нет необходимости управлять собственными серверами и масштабировать их.

Уже используете облачные функции на Google Cloud Platform? Узнайте больше о том, как Firebase вписывается в общую картину.

Начать работу Примеры использования

Ключевые возможности

Интегрирует платформу Firebase

Написанные вами функции могут реагировать на события, генерируемые различными функциями Firebase и Google Cloud, от триггеров аутентификации Firebase до триггеров облачного хранилища .

Интегрируйте функции Firebase с помощью Admin SDK вместе с облачными функциями и интегрируйтесь со сторонними сервисами, создавая свои собственные веб-перехватчики. Cloud Functions сводит к минимуму шаблонный код, упрощая использование Firebase и Google Cloud внутри вашей функции.
Отсутствие обслуживания Разверните свой код JavaScript или TypeScript на наших серверах с помощью одной команды из командной строки. После этого Firebase автоматически масштабирует вычислительные ресурсы в соответствии с моделями использования вашими пользователями. Вы никогда не беспокоитесь об учетных данных, конфигурации сервера, настройке новых серверов или выводе из эксплуатации старых.
Сохраняет вашу логику конфиденциальной и безопасной Во многих случаях разработчики предпочитают управлять логикой приложения на сервере, чтобы избежать вмешательства со стороны клиента. Кроме того, иногда нежелательно разрешать обратную разработку этого кода. Облачные функции полностью изолированы от клиента, поэтому вы можете быть уверены, что они конфиденциальны и всегда делают именно то, что вы хотите.

Как это работает?

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

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

Жизненный цикл фоновой функции

  1. Вы пишете код для новой функции, выбираете поставщика событий (например, Cloud Firestore) и определяете условия, при которых функция должна выполняться.
  2. Когда вы развертываете свою функцию:
    1. Интерфейс командной строки Firebase создает .zip-архив кода функции, который затем загружается в корзину хранилища (с префиксом «gcf-sources») в вашем проекте Firebase.
    2. Cloud Build извлекает код функции и создает исходный код функции. Вы можете просмотреть журналы Cloud Build в консоли Google Cloud .
    3. Образ контейнера для кода встроенных функций загружается в частный репозиторий реестра контейнеров в вашем проекте (с именем «gcf»), и ваша новая функция развертывается.
  3. Когда провайдер событий генерирует событие, которое соответствует условиям функции, вызывается код.
  4. Если функция занята обработкой большого количества событий, Google создает больше экземпляров для более быстрой обработки. Если функция неактивна, экземпляры очищаются.
  5. При обновлении функции путем развертывания обновленного кода экземпляры более старых версий очищаются вместе с артефактами сборки в хранилище и реестре контейнеров и заменяются новыми экземплярами.
  6. Когда вы удаляете функцию, все экземпляры и zip-архивы очищаются вместе с соответствующими артефактами сборки в хранилище и реестре контейнеров. Связь между функцией и поставщиком событий удаляется.

Помимо прослушивания событий с помощью фоновой функции, вы можете вызывать функции напрямую с помощью HTTP-запроса или вызова от клиента .

Путь реализации

Настроить облачные функции Установите интерфейс командной строки Firebase и инициализируйте облачные функции в своем проекте Firebase.
Функции записи Напишите код JavaScript (или код TypeScript для преобразования при развертывании) для обработки событий из служб Firebase, облачных служб Google или других поставщиков событий.
Функции тестирования Используйте локальный эмулятор, чтобы проверить свои функции.
Развертывание и мониторинг Включите выставление счетов для своего проекта и разверните свои функции с помощью интерфейса командной строки Firebase. Вы можете использовать консоль Firebase для просмотра и поиска в журналах.

Следующие шаги