Skip to content

linkedin/diderot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

abhics1002Abhishek Bharadwaj
and
Abhishek Bharadwaj
Apr 15, 2025
6750bb6 · Apr 15, 2025

History

25 Commits
Apr 3, 2025
Mar 21, 2025
Feb 7, 2025
Apr 15, 2025
Apr 15, 2025
Apr 3, 2025
Jan 28, 2025
Aug 26, 2024
Aug 26, 2024
Aug 26, 2024
Apr 3, 2025
Aug 26, 2024
Aug 26, 2024
Apr 3, 2025
Apr 3, 2025
Mar 21, 2025
Mar 21, 2025
Mar 11, 2025
Apr 3, 2025
Apr 3, 2025
Apr 9, 2025
Apr 9, 2025
Aug 26, 2024
Aug 26, 2024
Aug 26, 2024

Repository files navigation

Diderot

(pronounced dee-duh-row)


Diderot is a server implementation of the xDS protocol that makes it extremely easy and efficient to implement a control plane for your Envoy and gRPC services. For the most up-to-date information, please visit the documentation.

Quick Start Guide

The only thing you need to implement to make your resources available via xDS is a diderot.ResourceLocator(link). It is the interface exposed by the ADS server implementation which should contain the business logic of all your resource definitions and how to find them. To facilitate this implementation, Diderot provides an efficient, low-resource cache that supports highly concurrent updates. By leveraging the cache implementation for the heavy lifting, you will be able to focus on the meaningful part of operating your own xDS control plane: your resource definitions.

Once you have implemented your ResourceLocator, you can simply drop in a diderot.ADSServer to your gRPC service, and you're ready to go! Please refer to the examples/quickstart package

Features

Diderot's ADS server implementation is a faithful implementation of the xDS protocol. This means it implements both the State-of-the-World and Delta/Incremental variants. It supports advanced features such as glob collections, unlocking the more efficient alternative to the EDS stage: LEDS (design doc).