Функции Callable Cloud лучше, чем функции HTTP?

С последними обновлениями Firebase Update были введены вызываемые функции. Мой вопрос заключается в том, быстрее ли этот новый способ, чем "старые" триггеры HTTP, и если он более безопасен.

У меня нет опыта в этой области, но я думаю, что HTTP vs HTTPS может иметь значение.

Это интересно для меня, потому что, если вызываемые функции быстрее, у них есть это преимущество, но их недостаток заключается в характере гибкости: к ним не могут добраться другие источники.

Если вызываемые функции не имеют преимуществ с точки зрения скорости или безопасности, я не вижу причины переключать его.

Ответ 1

Вызываемые функции в точности совпадают с функциями HTTP, за исключением того, что предоставленные SDK выполняют для вас дополнительную работу, которую вам не нужно выполнять. Это включает в себя:

  1. Отправка аутентифицированного токена пользователя
  2. Отправка идентификатора экземпляра устройства
  3. Сериализация входного объекта, который вы передаете клиенту
  4. Десериализация входного объекта в функции
  5. Сериализация объекта ответа в функции
  6. Десериализация объекта ответа в клиенте

Это все указано в документации. Если вы в порядке с выполнением всей этой работы самостоятельно, то не используйте вызываемые объекты. Если вы хотите, чтобы эта работа выполнялась автоматически, то вызовы могут быть полезны.

Если вам нужен непосредственный контроль над деталями протокола HTTP (метод, заголовки, тело контента), не используйте вызываемый элемент, поскольку он скрывает все эти детали.

Нет никаких преимуществ безопасности при использовании вызываемых объектов. Там нет улучшения скорости.