open-feature/flagd

[FEATURE] Improve evaluation performance

Ouverte

#1 453 ouverte le 20 nov. 2024

 (8 commentaires) (1 réaction) (1 personne assignée)Go (118 forks)github user discovery
enhancementgood first issuehelp wanted

Métriques du dépôt

Stars
 (925 étoiles)
Métriques de merge PR
 (Merge moyen 3j 9h) (8 PRs mergées en 30 j)

Description

Overview

The flag evaluation engine in flagd leverages JsonLogic to provide a powerful and flexible rule-based serializable logic. The flagd binary and in-process Go flagd provider use this library. To improve flag evaluation performance and reduce computational overhead, the ruleset should be pre-decoded when a flag set is loaded (or updated). This removes the need to parse the JsonLogic structure for each evaluation.

### Tasks
- [ ] [Add support for pre-decoded rules in the Go JsonLogic SDK](https://github.com/diegoholiveira/jsonlogic/issues/88).
- [ ] Update flagd to use the pre-decoded rules.
- [ ] 🥇 Bonus points for running a performance test to measure the improvements

This should be a non-breaking change in the Go JsonLogic SDK.

Guide contributeur