For my master thesis I developed a service that selects the best server from a given set, depending on specific requirements for different applications. Such requirements can easily be formulated with a kind of scripting language, a DSL (domain-specific language)...
Optimization of the deployment of distributed applications using a domain-specific language description
"In distributed systems, it is a common problem to optimize the communication between the individual components and to comply with various requirements, such as not exceeding barriers of time, or saving a certain quality of a connection. It must be wrestled with latency and accessibility, as well as a possible failure of a connection can be handled. Depending on the environment, whether cloud system, internet chat or online game, there are countless variations to counteract the different problems and compensate the consequences. Rarely, however, the problem is tackled directly in the cause, the locations of the servers or other important hubs.
This work deals with the deployment of distributed applications in order to mitigate potential problems in advance. In the accompanying implementation emphasis is on the re-usability and the user-friendliness. Here, a user who is also a developer in this context, take by means of a domain-specific description language influence on the events and adapt with ease the procedures of the implementation of its special requirements.
Furthermore, this implementation is analyzed and discussed thoroughly."