Skip to content

Improve cache performance and resolution calls

Jeremy Jackson requested to merge jj-improved-caching-performance into master

This reduces the number of calls to the variant resolver, as well as has adjustments for reducing cache size by better supporting nil variants instead of assigning control when unspecified.

A couple extras are that we better handle specifying a variant over the cached value. This means that if you needed to, you could revert everyone back to the control with a code push or by clearing the cache after rolling back.

These features will all need to eventually become part of the interface by which we manage rollout/rollback, pre-segmentation and other aspects and so aren't exactly a concern for this repo yet.

Closes #10 (closed), #8 (closed)

I'm considering #10 (closed) and #8 (closed) resolved by this, as the concepts have come to being complete thoughts now (even if not fully fleshed out). The caching is largely up to the project utilizing the gem though, and some caching or storage layer is required for context migrations and improved real time segmentation performance.

Edited by Jeremy Jackson

Merge request reports