Skip to content

Commit 4854946

Browse files
committed
allow the user to enable split caching via config
1 parent e9bdc2c commit 4854946

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

splitio/client/config.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
'redisHost': 'localhost',
2222
'redisPort': 6379,
2323
'redisDb': 0,
24+
'redisLocalCache': False,
25+
'redisLocalCacheTTL': 5,
2426
'redisPassword': None,
2527
'redisSocketTimeout': None,
2628
'redisSocketConnectTimeout': None,

splitio/client/factory.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ def _build_in_memory_factory(api_key, config, sdk_url=None, events_url=None): #
246246
timeout=cfg.get('connectionTimeout')
247247
)
248248

249-
sdk_metadata = util.get_metadata(config)
249+
sdk_metadata = util.get_metadata(cfg)
250250
apis = {
251251
'splits': SplitsAPI(http_client, api_key),
252252
'segments': SegmentsAPI(http_client, api_key),
@@ -348,10 +348,12 @@ def _build_redis_factory(api_key, config):
348348
"""Build and return a split factory with redis-based storage."""
349349
cfg = DEFAULT_CONFIG.copy()
350350
cfg.update(config)
351-
sdk_metadata = util.get_metadata(config)
352-
redis_adapter = redis.build(config)
351+
sdk_metadata = util.get_metadata(cfg)
352+
redis_adapter = redis.build(cfg)
353353
storages = {
354-
'splits': RedisSplitStorage(redis_adapter),
354+
'splits': RedisSplitStorage(
355+
redis_adapter, cfg['redisLocalCache'], cfg['redisLocalCacheTTL']
356+
),
355357
'segments': RedisSegmentStorage(redis_adapter),
356358
'impressions': RedisImpressionsStorage(redis_adapter, sdk_metadata),
357359
'events': RedisEventsStorage(redis_adapter, sdk_metadata),

0 commit comments

Comments
 (0)