In the recent years there is a noticeable, on-going paradigm shift in progress in the field of IT, especially in areas associated with large-scale systems. More and more of these existing systems are moved to the cloud, and cloud based technologies are becoming quite popular in new projects.
The main implication of developing to a cloud platform is that the importance of initial capacity planning is drastically reduced, the task of scaling a system become a run time problem. This flexibility is due to the capability of adding new resources to the system on the fly in cloud environments.
The goal of my thesis is to plan, build and explore the implications of a cloud-based, adaptive load balanced and scaled system.
Further use of the results obtained in my thesis is one of the most important factors for me. Therefore I decided to plan the system as generic as I can, without any specific business functionality at the beginning.
After the development of this generic system, I intend to demonstrate its capabilities by using it for a real application. In this case, this application is a rule-based automation system, which uses the user’s smart devices both as sensors and manipulators.
During the development of the system, I’ll be backing up each decision I make with meassurements. Because of this, having strong monitoring and benchmark capabilities is unavoidable.
From the technical side, the system will be developed using Java and Java based technologies, like the Spring Framework or Amazon Web Services Java SDK. These technologies and their alternatives are also going to be examined in the thesis.
A mobil client for the example system and performance messauremnet tools for the generic system is made by my colluge, Peter Puskas Computer Engineering student.