Проверяет знание альтернативных протоколов и архитектур взаимодействия клиента и сервера.
Кроме REST используются GraphQL, WebSocket, gRPC и Server-Sent Events. GraphQL позволяет запрашивать только нужные данные, WebSocket обеспечивает постоянное соединение, а SSE используется для однонаправленных обновлений. Эти подходы применяются в зависимости от задач приложения.
REST — не единственный способ взаимодействия клиента и сервера. В реальных системах используются разные протоколы и подходы.
GraphQL
Позволяет клиенту самому определять структуру ответа.
Пример запроса:
{
user {
id
name
}
}
WebSocket
Позволяет установить постоянное соединение.
Используется для:
чатов
онлайн-игр
уведомлений
Server-Sent Events
Однонаправленный поток данных от сервера к клиенту.
gRPC
Бинарный протокол с высокой производительностью.
GraphQL — сложные модели данных
WebSocket — real-time
SSE — стриминг событий
Выбор протокола зависит от требований к производительности, структуре данных и необходимости real-time взаимодействия.