How exactly does the api work? Is every call to check a flag making a HTTP request to LD or does the ld client sync periodically?
The SDK maintains these rulesets in memory, and when you need to evaluate a flag for a given user, the ruleset is evaluated. This way, there is no I/O at the time that a rule is evaluated, so there is no real performance impact. At the same time, because of the way we stream the rulesets to the SDK, any rule changes take effect immediately.
https://launchdarkly.com/performance.html has some diagrams, etc, detailing this (sorry for the marketing fluff :)