split-sync A background service to synchronize Split information with your SDK
10M+
By default, Split’s SDKs keep segment and split data synchronized as users navigate across disparate systems, treatments, and conditions. However, some languages, do not have a native capability to keep a shared local cache of this data to properly serve treatments. For these cases, we built the Split Synchronizer.
Split Synchronizer supports Go version 1.13 or higher.
docker pull splitsoftware/split-synchronizer:latest
docker run --rm --name split-synchronizer \
-p 3010:3010 \
-e SPLIT_SYNC_APIKEY="your-sdk-api-key" \
-e SPLIT_SYNC_REDIS_HOST=<your-redis-host> \
-e SPLIT_SYNC_REDIS_PORT=<your_redis_port> \
splitsoftware/split-synchronizer
Please refer to our official docs to learn about all the functionality provided by Split Synchronizer and the configuration options available for tailoring it to your current application setup.
- SPLIT_SYNC_APIKEY Split Server-side SDK api-key
- SPLIT_SYNC_LOG_LEVEL error;warning;info;debug;verbose
- SPLIT_SYNC_LOG_OUTPUT Where to output logs (defaults to stdout)
- SPLIT_SYNC_LOG_ROTATION_MAX_FILES Max number of files to keep when rotating logs
- SPLIT_SYNC_ADMIN_HOST Host where the admin server will listen
- SPLIT_SYNC_ADMIN_PORT Admin port where incoming connections will be accepted
- SPLIT_SYNC_ADMIN_USERNAME HTTP basic auth username for admin endpoints
- SPLIT_SYNC_ADMIN_PASSWORD HTTP basic auth password for admin endpoints
- SPLIT_SYNC_ADMIN_SECURE_HC Secure Healthcheck endpoints as well
- SPLIT_SYNC_IMPRESSION_LISTENER_ENDPOINT HTTP endpoint to forward impressions to
- SPLIT_SYNC_IMPRESSION_LISTENER_QUEUE_SIZE max number of impressions bulks to queue
- SPLIT_SYNC_SLACK_WEBHOOK slack webhook to post log messages
- SPLIT_SYNC_SLACK_CHANNEL slack channel to post log messages
- SPLIT_SYNC_IP_ADDRESS_ENABLED Bundle host's ip address when sending data to split
- SPLIT_SYNC_TIMEOUT_MS How long to wait until the synchronizer is ready
- SPLIT_SYNC_SNAPSHOT Snapshot file to use as a starting point
- SPLIT_SYNC_FORCE_FRESH_STARTUP Wipe storage before starting the synchronizer
- SPLIT_SYNC_STORAGE_TYPE Storage driver to use for caching splits/segments and user-generated data
- SPLIT_SYNC_SPLIT_REFRESH_RATE_MS How often to refresh splits
- SPLIT_SYNC_SEGMENT_REFRESH_RATE_MS How often to refresh segments
- SPLIT_SYNC_IMPRESSIONS_MODE Whether to send all impressions for debugging
- SPLIT_SYNC_STREAMING_ENABLED Enable/disable streaming functionality
- SPLIT_SYNC_HTTP_TIMEOUT_MS Total http request timeout
- SPLIT_SYNC_INTERNAL_METRICS_RATE_MS How often to send internal metrics
- SPLIT_SYNC_TELEMETRY_PUSH_RATE_MS How often to flush sdk telemetry
- SPLIT_SYNC_IMPRESSIONS_FETCH_SIZE Impression fetch bulk size
- SPLIT_SYNC_IMPRESSIONS_PROCESS_CONCURRENCY #Threads for processing imps
- SPLIT_SYNC_IMPRESSIONS_PROCESS_BATCH_SIZE Size of imp processing batchs
- SPLIT_SYNC_IMPRESSIONS_POST_CONCURRENCY #concurrent imp post threads
- SPLIT_SYNC_IMPRESSIONS_POST_SIZE Max #impressions to send per POST
- SPLIT_SYNC_IMPRESSIONS_ACCUM_WAIT_MS Max ms to wait to close an impressions bulk
- SPLIT_SYNC_EVENTS_FETCH_SIZE How many impressions to pop from storage at once
- SPLIT_SYNC_EVENTS_PROCESS_CONCURRENCY #Threads for processing imps
- SPLIT_SYNC_EVENTS_PROCESS_BATCH_SIZE Size of imp processing batchs
- SPLIT_SYNC_EVENTS_POST_CONCURRENCY #concurrent imp post threads
- SPLIT_SYNC_EVENTS_POST_SIZE Max #impressions to send per POST
- SPLIT_SYNC_EVENTS_ACCUM_WAIT_MS Max ms to wait to close an events bulk
- SPLIT_SYNC_REDIS_HOST Redis server hostname
- SPLIT_SYNC_REDIS_PORT Redis Server port
- SPLIT_SYNC_REDIS_DB Redis DB
- SPLIT_SYNC_REDIS_PASS Redis password
- SPLIT_SYNC_REDIS_PREFIX Redis key prefix
- SPLIT_SYNC_REDIS_NETWORK Redis network protocol
- SPLIT_SYNC_REDIS_MAX_RETRIES Redis connection max retries
- SPLIT_SYNC_REDIS_DIAL_TIMEOUT Redis connection dial timeout
- SPLIT_SYNC_REDIS_READ_TIMEOUT Redis connection read timeout
- SPLIT_SYNC_REDIS_WRITE_TIMEOUT Redis connection write timeout
- SPLIT_SYNC_REDIS_POOL Redis connection pool size
- SPLIT_SYNC_REDIS_SENTINEL_REPLICATION Redis sentinel replication enabled
- SPLIT_SYNC_REDIS_SENTINEL_ADDRESSES List of redis sentinels
- SPLIT_SYNC_REDIS_SENTINEL_MASTER Name of master
- SPLIT_SYNC_REDIS_CLUSTER_MODE Redis cluster enabled
- SPLIT_SYNC_REDIS_CLUSTER_NODES List of redis cluster nodes
- SPLIT_SYNC_REDIS_CLUSTER_KEY_HASHTAG keyHashTag for redis cluster
- SPLIT_SYNC_REDIS_TLS Use SSL/TLS for connecting to redis
- SPLIT_SYNC_REDIS_TLS_SERVER_NAME Server name to use when validating a server public key
- SPLIT_SYNC_REDIS_TLS_CA_CERTS Root CA certificates to connect to a redis server via SSL/TLS
- SPLIT_SYNC_REDIS_TLS_SKIP_NAME_VALIDATION Blindly accept server's public key
- SPLIT_SYNC_REDIS_TLS_CLIENT_CERTIFICATE Client certificate signed by a known CA
- SPLIT_SYNC_REDIS_TLS_CLIENT_KEY Client private key matching the certificate
- SPLIT_SYNC_STORAGE_CHECK_RATE_MS How often to check storage health
The Split team monitors all issues submitted to this issue tracker. We encourage you to use this issue tracker to submit any bug reports, feedback, and feature enhancements. We'll do our best to respond in a timely manner.
Please see Contributors Guide to find all you need to submit a Pull Request (PR).
Licensed under the Apache License, Version 2.0. See: Apache License.
Split is the leading Feature Delivery Platform for engineering teams that want to confidently deploy features as fast as they can develop them. Split’s fine-grained management, real-time monitoring, and data-driven experimentation ensure that new features will improve the customer experience without breaking or degrading performance. Companies like Twilio, Salesforce, GoDaddy and WePay trust Split to power their feature delivery.
To learn more about Split, contact [email protected], or get started with feature flags for free at https://www.split.io/signup.
Split has built and maintains SDKs for:
For a comprehensive list of opensource projects visit our Github page.
Learn more about Split:
Visit split.io/product for an overview of Split, or visit our documentation at docs.split.io for more detailed information.
Content type
Image
Digest
sha256:18082c402…
Size
48.5 MB
Last updated
1 day ago
docker pull splitsoftware/split-synchronizer