Join Newsletter

Delivering LiveQueries via LiveServer

YOW! 2017 Sydney

Facebook has been using GraphQL queries to build rich user experience on web and mobile. User interface updated in real time as other users interact with the system plays a key role in driving user engagement. LiveQueries is an API to allow building interactive user interface, update client caches, push updates to the client in the background and more. It allows subscribing to the query result and receive updates as the query result changes.

LiveServer is a stateful back-end for LiveQueries which interacts with query execution engine and reactive data sources. It uses dependency tracking and query re-execution to send updated query results to the client. It also allows delayed query execution and application of strategies for failed client message deliveries. Client and server is using long living connections and RSocket application protocol to deal with subscriptions, bi-directional streams, flow control and connection resumability.

Ondrej Lehecka

Engineering Manager

Facebook

United States

Ondrej Lehecka is an engineering manager on the Facebook Live Server team. He has been leading development of application protocols and back end systems allowing building interactive user experience. He was also working on several real-time messaging systems powering FB Messenger. He came to Facebook from Microsoft where he worked on Windows, XBox and several multimedia media processing platforms. He has masters degree in computer science from the Palacky University of Olomouc in the Czech Republic.

Interests include building highly available and fault tolerant distributed systems, managed languages, functional programming and open source projects such as RSocket (https://github.com/lehecka/rsocket-cpp).