SYSTEM Cited by 1 source
fbthrift¶
Definition¶
fbthrift is Meta / Facebook's fork of Apache Thrift — an RPC + serialization framework with a strongly-typed IDL that generates client + server stubs in many languages. fbthrift diverges from Apache Thrift on protocol extensions, codegen, transport features (including compression plumbing), and evolution cadence. Public repository: github.com/facebook/fbthrift.
Canonical wiki role¶
- Pinterest's internal RPC framework for root-leaf ML-serving traffic, as disclosed in the 2026-05-01 Feature Trimmer post: "we enabled lz4 compression in fbthrift (the RPC framework used by root and leaf) for root-leaf traffic." (Source: sources/2026-05-01-pinterest-optimizing-ml-workload-network-efficiency-part-i-feature-trimmer). This is the first canonical wiki disclosure of fbthrift usage at Pinterest.
Pinterest-specific operational data¶
Pinterest's lz4 compression toggle on fbthrift root-leaf traffic delivered:
- −20% root-leaf network usage
- +5% CPU on the compressing/decompressing sides
- +5 ms (~10%) p90 latency
This is a classic compression codec trade-off data point at RPC altitude: lz4 chosen for low-CPU / low-latency characteristics rather than maximum ratio. Pinterest's explicit framing: "a solid early win, but it didn't change the underlying problem: we were still shipping too much unused data" — prompting the complementary Feature Trimmer build.
Relationship to Apache Thrift¶
- Apache Thrift (2007+, apache.org) and fbthrift (Meta fork, 2014+) share IDL heritage but have diverged substantially.
- fbthrift adds: native HTTP/2 support, rich transport-layer features, native support for multiple protocol encodings (Compact / Binary / JSON), and a distinct codegen pipeline.
- Canonical Apache Thrift wiki instance: systems/apache-thrift as Uber's 2013+ microservice IDL before Uber moved to systems/grpc + systems/protobuf.
Seen in¶
- 2026-05-01 Pinterest — Optimizing ML Workload Network Efficiency (Part I): Feature Trimmer (sources/2026-05-01-pinterest-optimizing-ml-workload-network-efficiency-part-i-feature-trimmer) — canonical; first wiki disclosure of fbthrift as Pinterest's root-leaf RPC framework; lz4 compression as the first-lever 20% network reduction.
Caveats¶
- Stub — this page is scoped to the disclosed Pinterest-usage datum. Meta's own internal fbthrift deployments (at TAO / Scribe / the larger Meta service mesh) are referenced across Meta Engineering posts but not yet canonicalised on the wiki. Expect expansion as Meta posts get ingested.
- No wire-format or transport details disclosed in the Pinterest post beyond the lz4-compression knob.
Related¶
- systems/apache-thrift — the Apache Software Foundation fork; Uber's canonical Thrift deployment.
- systems/grpc — Google's RPC framework peer; Uber's eventual Thrift successor.
- systems/protobuf — gRPC's companion IDL + wire format.
- concepts/compression-codec-tradeoff — the lz4 data point from Pinterest.
- patterns/client-side-compression-over-broker-compression — sibling RPC-layer compression guidance.
- companies/pinterest — canonical user per 2026-05-01 post.