Google 致力于为黑人社区推动种族平等。查看具体举措
Эта страница переведена с помощью Cloud Translation API.
Switch to English

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

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

Уже используете облачные функции в Google Cloud? Узнайте больше о том, как 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 Console .
    3. Образ контейнера для кода встроенных функций загружается в частный репозиторий реестра контейнеров в вашем проекте (с именем «gcf»), и ваша новая функция развертывается.
  3. Когда провайдер событий генерирует событие, которое соответствует условиям функции, вызывается код.
  4. Если функция занята обработкой большого количества событий, Google создает больше экземпляров для более быстрой обработки. Если функция неактивна, экземпляры очищаются.
  5. При обновлении функции путем развертывания обновленного кода экземпляры для более старых версий очищаются вместе с артефактами сборки в облачном хранилище и реестре контейнеров и заменяются новыми экземплярами.
  6. Когда вы удаляете функцию, все экземпляры и zip-архивы очищаются вместе со связанными артефактами сборки в облачном хранилище и реестре контейнеров. Связь между функцией и поставщиком событий удаляется.

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

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

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

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