Creating a realtime application would require the knowledge of the technologies, paradigms and protocols involved according to the use-case you are implementing for. However even after acquiring this knowledge, it's pretty complex to implement all of these from scratch yourself. The usual way would be to use one of the PaaS or IaaS services/APIs that are available out there like deepstream.io , pusher, socket.io , Firebase, etc. I've extensively used deepstream.io . It is an open source realtime server with both websockets and http support. Hence, IMO it would be a great option. They have a community that is responsive to any queries in case you get stuck somewhere while implementing it. Hope this helps.