The following issues were reported by customers. We collected what we learned and possible solutions.
First, you can verify on the Service Status Monitor that ConfigCat is up and running or if there is planned maintenance.
- It might be a good idea to update the ConfigCat SDK to the latest version.
- Check if you configured the Data Governance functionality properly.
- Singleton: We strongly recommend using the ConfigCat SDK as a Singleton. Initializing the SDK over and over again can cause serious performance issues in production. If you want to use multiple SDK Keys in the same application, create only one ConfigCat Client per SDK Key.
- Are you using the proper polling mode for your use case? Details on polling modes in the SDK Docs.
- Might be a too frequent
Auto Pollinginterval. Please check the SDK Docs.
Manual Pollingmode, it could be a too frequent
forceRefresh()call in your code, making the SDK download the config.json often.
- You can try one of our lightweight sample applications to rule out local issues. Find in the repository of each SDK.
Please, do not load test the ConfigCat production infrastructure without our consent.
- You can check the response times manually by navigating to
https://cdn.configcat.com/ping.txtand opening your browser's network tab.
- Does the machine/server your code runs on has access to the above address?
- You might need to whitelist the following addresses in your firewall:
The problem was with Angular's Hot Module Replacement functionality during development. The wrapper class, which contained the auto polling ConfigCat SDK was edited, and the Hot Module Replacement reinitialized the whole class without releasing the old, replaced module's Auto Polling timer. We believe that this is a really rare case, it could happen only during development.
The Python SDK's Auto polling mode utilizes its polling job in a
threading.Thread object. If you are running your application behind an uWSGI web server, the auto polling mode may not work as expected, because the uWSGI web server disables Python's threading by default. Please enable threading or switch to another polling mode in this case.