Along with the widespread adoption of internet usage and increasing popularity of smart mobile devices, the online systems and services have become the part of everyday life. Millions of people use them for communication and collaboration every single day. These services have gained high popularity from two essential factors. First of all, they are available from every computer platform including mobile phones, tablets, laptops and even smart TVs and in the same time regardless of the used platform they provide the feeling of immediacy. This means that messages, events and changes take effect in almost real time and they reach any devices of the user. While this immediacy is essential for seamless user experience, it also brings challenges for the engineers and operators of the modern systems. The pieces of information should be delivered incredibly fast to the proper client device, even when having millions of other online users, which can eat up large amount of resources.
In the first part of my thesis I will present the push notification technology, which is one of the currently used and most efficient solutions for the above-mentioned problem. At the moment push technology is expansively used by all common mobile and computer platforms, but with different methods and incompatible implementations. In a real system these notification systems have to be used simultaneously because of the varying devices of the users. Therefore after the theoretical overview of the push technology I examine the possible ways of integrating the existing notification systems.
In the following part I present an existing and actively used cloud based file sharing service, which currently relies on a highly inefficient notification method. For the replacement of the old resource-wasting technology a new optimized notification system will be designed and implemented including a new push communication server and protocol, as well as a gateway for the integration of the existing push services of the biggest mobile platforms.
At the end of the thesis I will measure the performance of the new system and according to the results the throughput of the system will be approximated. I will also summarize the achieved results and conclusions of the design process.