Вопрос проверяет понимание различий между gRPC и REST, а также умение выбирать подходящий протокол для конкретных задач.
gRPC и REST — это два подхода к построению API, каждый из которых имеет свои сильные и слабые стороны. gRPC основан на HTTP/2 и использует Protocol Buffers для сериализации данных, что делает его быстрее и эффективнее по сравнению с REST, который обычно работает поверх HTTP/1.1 и использует JSON или XML.
syntax = "proto3";
service UserService {
rpc GetUser (UserRequest) returns (UserResponse);
rpc ListUsers (Empty) returns (stream UserResponse);
}
message UserRequest {
int32 id = 1;
}
message UserResponse {
int32 id = 1;
string name = 2;
string email = 3;
}
message Empty {}GET /users/{id} -> JSON: { "id": 1, "name": "John", "email": "john@example.com" }
GET /users -> JSON: [{ "id": 1, "name": "John" }, ...]gRPC стоит применять в микросервисной архитектуре, где важна производительность и потоковая передача данных, а REST — для публичных API, где важна простота и совместимость с браузерами.
Уровень
Рейтинг:
4
Сложность:
6
Навыки
Node.js
Networks
Ключевые слова
Подпишись на Golang Developer в телеграм