Reputation: 3883
What is the architecture of http://telepat.io?
How exactly does client/server db sync work in http://telepat.io?
What is the purpose of redis DB, do you use it for data sync?
I want to have picture similar to this hood.ie architecture:
Upvotes: 1
Views: 293
Reputation: 132
I've made you this diagram (not very good at explaining through diagrams), I hope you'll understand the general view of it.
This is how a client would normally operate in the Telepat system: subscribes to object in the app (it returns the objects from that channel), sends requests to API for creating/updating/deleting app objects. API sends messages to the workers (aggregators just put these changes (deltas) in the Redis volatile DB; writers get notified by aggregators which in turn process the deltas and writes changes to DB, writers know which channels each are affected by the change and gets the subscribed devices for each of those channels sending messages to client transport workers; these workers send the changes back to the clients, GCM, APN or webSockets).
Redis is used for volatile stuff like devices, subscriptions, deltas and object caches.
Upvotes: 1