For a sophisticated web advertising system a banner server was developed using the Java programming languge. This server uses the advanced threading capabilities of the Java language and the excellent database driver support via JDBC.
It uses HTTP to serve out banners, so basically it's a dedicated web server written in Java. Every hour a schedule for the banners is obtained from a database stored in the open source MySQL database.
View and click statistics are recorded in the same MySQL database. The Java server also uses a database to obtain the country, and if possible even the city, of the IP address the visitor uses. This makes it possible to show a banner with an advertisement local to the visitor; a technique called geo targetting.