The popularity of using services provided by the so-called cloud has been increasing dynamically. The “fear of new” is decreasing and people realize the opportunities offered by this new way of thinking about computational resources. There are plenty of scenarios when using the cloud could be the best decision. By using these kinds of services you do not have to worry about maintenance, or the initial investment of purchasing a server farm.
It is possible to rent an astonishing amount of computational power even only for a short period of time. For new projects using the cloud as an environment is straightforward, but porting existing applications to the cloud might prove difficult. These were the motivations for me to design and implement an application that works as a framework. It takes care of creating servers, distributing the input data, and collecting the results. By using the services of this framework an application can be executed on several servers in a parallel manner, requiring only minor modifications. I also created a website where the users are able to create new tasks, upload files and observe the execution. This framework was written in C# and uses the services provided by Microsoft Azure.
At the end of my thesis I show the results of tests and measurements to prove the efficiency and to show the fault tolerance capabilities of my application.