Является ли REST оптимальным вариантом по данным или есть более быстрые аналоги
Что проверяют
Кругозор и умение мерить. Для тестировщика вопрос не про моду на протоколы, а про то, спросите ли вы сначала, что значит «быстрее»: задержка одного вызова, пропускная способность, объём трафика или число обращений до готового экрана. И знаете ли вы, чем каждый вариант проверяется.
Как отвечать
Сначала снимите ложную развилку: REST это архитектурный стиль поверх HTTP, а не формат данных и не транспорт. Скорость определяют полезная нагрузка, число обращений, кеширование и работа бэкенда, а не буквы в названии.
Потом альтернативы и их цена:
gRPC. Бинарный protobuf поверх HTTP/2, мультиплексирование и потоки; выигрывает на межсервисном трафике. В браузер напрямую не ходит, нужен прокси, а для проверок понадобятся grpcurl и контрактные тесты по proto-файлу.
GraphQL. Клиент берёт нужные поля одним запросом, но обычное HTTP-кеширование ломается, на бэкенде появляется проблема N+1, а тестировать приходится не эндпоинты, а комбинации полей, глубину и сложность запроса.
WebSocket и SSE. Это про поток событий, а не замена обычным операциям чтения и записи.
Закончите практикой: в большинстве систем узкое место не протокол, а отсутствие пагинации, тяжёлые ответы, лишние обращения, несжатый трафик и запросы к базе. Поэтому сначала замер (время до первого байта, профиль запроса, нагрузочный прогон в k6 или JMeter), потом решение.
Где спотыкаются
Называют gRPC быстрее по умолчанию, не оговаривая условия. На коротком внутреннем вызове разница ощутима, а через интернет, с TLS и прокси, она нередко теряется на фоне сети.
Считают GraphQL бесплатным ускорением. Трафик падает, а нагрузка на базу и стоимость тестирования растут, и без ограничения сложности запроса открывается лёгкий способ положить сервис.
Сравнивают на глаз: один прогон с ноутбука, без прогрева, без фиксации окружения и без повторов. Такой замер не отличает протокол от качества связи и в отчёте не значит ничего.