You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The feature server's /get-online-features endpoint uses google.protobuf.json_format.MessageToDict to convert protobuf responses to JSON. MessageToDict is a generic converter designed for any protobuf type, but for the known GetOnlineFeaturesResponse structure, a type-specific converter is 4x faster.
Steps to reproduce
Deploy Feast feature server to Kubernetes
Call /get-online-features with 100 entities and 50 features
Profile the endpoint and isolate MessageToDict time
Observe ~12ms spent in MessageToDict (98% of serialization time)
Compare with proto binary serialization which takes only 0.1ms
Implement custom dict builder and observe 2.9ms (4x improvement)
Specifications
Feast version: 0.60.0
Python version: 3.11
Tested on: OpenShift/Kubernetes with Redis, PostgreSQL, DynamoDB
Activity
abhijeet-dhumal commentedon Feb 24, 2026
@ntkathole @franciscojavierarceo
Hey guys, may i request your opinion on this ?
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
[perf] Replace MessageToDict with optimized custom dict builder
perf: Replace MessageToDict with optimized custom dict builder