-
Notifications
You must be signed in to change notification settings - Fork 75
Description
This issue will be used to track the state of pub/sub and live queries support in GraphQL.
Currently subscriptions or live queries are not part of official GraphQL specification. However some of the server implementations already try to support it. What is important to remember here:
- GraphQL don't have hard dependency on the transport layer. We should keep it this way.
- It shouldn't be tied to underlying subscription mechanism - if we want, we should be able to use in-memory subscription manager or replace it with i.e. Redis.
How live queries differ from subscriptions
When making live query, server first returns data fitting requested GraphQL query. However when that data will change, it should calculate a correct diff between new state and the previously sent one, and send that diff to the client.
This is a lot heavier task that pub/sub, as server must keep track on what data has changed and be able to generate new deltas. It may bound server implementation to a specific technology and therefore should be implemented at the end.