Что такое gRPC metadata?

Middle
235 просмотров
AFK Offer AI

Metadata — key-value пары, аналог HTTP headers. Бывают два типа: обычные (отправляются до данных) и trailing (после данных, только от сервера). Используются для auth tokens, request ID, tracing context, rate limit info. В Go: md := metadata.Pairs("authorization", "Bearer token"); ctx = metadata.NewOutgoingContext(ctx, md). На сервере: md, ok := metadata.FromIncomingContext(ctx). Interceptors часто читают/пишут metadata для cross-cutting concerns. Ключи автоматически lowercase, бинарные данные — ключ с суффиксом -bin.

Следующий вопрос

Как реализовать concurrent-safe counter?