Concepts: Real-time delivery
Real-time delivery is a core principle of Feato. Feature flag changes are propagated to connected applications immediately, without polling or manual refresh.
Feature flags should reflect the current state of the system, not the state from a few minutes ago.
Why real-time matters
Traditional feature flag systems often rely on polling. Applications periodically ask the server for updates, usually every few seconds or minutes.
This approach introduces unavoidable delays and increases load on both clients and servers.
- Flags may be outdated for minutes
- Emergency rollbacks are delayed
- Infrastructure load increases with scale
Real-time delivery eliminates these problems by pushing updates only when changes occur.
How Feato delivers updates
Feato uses a persistent connection to deliver feature flag updates to clients as soon as they happen.
When a flag is updated or removed in the Feato Console, an event is emitted and streamed to all connected clients.
- No polling loops
- No periodic refresh logic
- No client-side timers
Clients receive only the changes that matter. If nothing changes, nothing is sent.
Connection lifecycle
Client SDKs establish a connection during initialization and keep it open for the lifetime of the application session.
If the connection is interrupted due to network issues, SDKs handle reconnection automatically.
- Initial state is fetched once
- Updates are streamed continuously
- Reconnection is handled transparently
Failure behavior
Real-time systems must fail safely. Feato is designed to degrade gracefully in case of errors.
- Temporary network issues do not crash applications
- Last known flag state is preserved
- Blocked projects resolve flags safely
If real-time delivery is unavailable, applications continue operating using the last known flag state.
Next steps
Now that you understand how real-time delivery works, you can explore how it is exposed through SDKs.