Architecture & Supporting Platform

he overall structure of the Magnify.net system is typical for a modern Web 2.0 application.

The software is provided as a multi-tier hosted service which can be customized and managed by the creators of affiliate sites.

Client Interfaces

The client-side interface is based on current web technology standards, including HTML 4 and CSS stylesheets.

We are optimizing our web interface for compatibility with the primary "modern" browsers; Internet Explorer on Windows, Firefox on multiple platforms, and Safari on Mac OS X. (We are aiming to have the site will degrade gracefully on niche and older browsers where possible.) Supporting tools include the free Flash player and the Prototype and Scriptaculous JavaScript libraries.

Several types of client-side interfaces are available:

  • Dynamic web pages with JavaScript for visual effects and AJAX functionality.
  • Embeddable widgets developed in Flash and HTML that can be placed on other sites.
  • RSS feeds provide alternate ways of accessing content.

Server Application

The server-side application is built on a common open-source "LAMP" software suite: Apache, MySQL, and Perl.

The software depends on a generic Linux/Unix/Posix-style environment and should be easily portable to other equivalent server platforms. Other supporting open-source elements include mod_perl, Mason, memcached, and Qmail.

The server-side functionality is partitioned into several tiers as follows:

  • Web server: delivers static files and act as a load balancing proxy for the app servers.
  • Application server: combines dynamic page templates with our custom logic and functionality.
  • Caching server: provides a shared repository for short-term storage of frequently used data.
  • Database server: stores, searches and updates all persistent information within the system.
  • Message server: sends automatic notifications and accepts content from email or mobile SMS.

Interconnected Services

The application server also interacts with other Internet services in a variety of ways:

  • Video hosting: post, retrieve and embed video content from third-party hosting services.
  • Advertising networks: retrieve and embed targeted advertising from third-party ad servers.
  • Affiliated sites: REST XML APIs enable integration with other sites operated by our affiliates.