Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud Functions
  • Сопоставление с другими сервисами Yandex Cloud
    • Обзор
      • Обзор
      • Интерфейс Function
      • Интерфейс YcFunction
      • Класс HttpServlet
      • Spring Boot
    • Управление зависимостями
    • Обработчик запросов
    • Контекст вызова
    • Журналирование
    • Обработка ошибок
    • Использование SDK
  • Инструменты
  • Правила тарификации
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Вопросы и ответы
  • Обучающие курсы
  1. Разработка на Java
  2. Модель программирования
  3. Обзор

Модель программирования на языке Java

Статья создана
Yandex Cloud
Обновлена 27 января 2025 г.
Открыть в Markdown

Сервис Cloud Functions предоставляет четыре модели программирования на языке Java — с помощью интерфейсов Function и YcFunction, класса HttpServlet, а также Spring Boot. Первые три способа задания обработчика функций подразумевают написание своих реализаций данных интерфейсов или классов, а последний — загрузку приложения в исходном виде без каких-либо изменений.

Разница между моделями Function и YcFunction состоит в наличии контекста вызова. Если, например, нужно взаимодействовать с сервисами Yandex Cloud при помощи SDK, то рекомендуем выбрать YcFunction. А модель использования класса HttpServlet позволяет получить полный контроль над возвращаемым значением и HTTP-методом, с помощью которого была вызвана функция, а также, как и модель YcFunction, дает доступ к контексту вызова.

Для моделей Function и YcFunction есть два обособленных типа: byte[] и String. Работа с ними отличается от работы с другими типами. При их использовании в качестве типа аргумента функции-обработчика среда выполнения не будет преобразовывать входящий запрос в JSON-интерпретацию для этих типов, а передаст его напрямую в пользовательскую функцию-обработчик. Исключением являются случаи, когда используется параметр ?integration=raw.

Примечание

В качестве библиотеки для сериализации и десериализации из JSON используется jsoniter.

Требования к обработчикуТребования к обработчику

Вне зависимости от выбранной модели загрузка проекта осуществляется одним из способов: в виде исходного кода, JAR-архива или Maven-проекта. Также на класс, содержащий функцию-обработчик, применяются следующие требования:

  • Он должен быть публичным.

  • У класса должен быть публичный конструктор без аргументов.

    По умолчанию он есть. Но если вы создали свой конструктор, принимающий аргументы, создайте также конструктор, не принимающий никаких аргументов.

  • Он не должен быть обобщенным.

Была ли статья полезна?

Предыдущая
Обзор
Следующая
Интерфейс Function
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»