September 20, 2014

Open Architecture

LAMP (Open Software Architecture)

The acronym LAMP refers to a solution stack of software, usually free and open source software, used to run dynamic Web sites or servers. The original expansion is as follows:

  • Linux, referring to the operating system
  • Apache, the Web server
  • My SQL, the database management system (or database server)
  • P (one of several scripting languages: Perl, PHP or Python. )

The combination of these technologies is used primarily to define a web server infrastructure, define a programming paradigm of developing software, and establish a software distribution package.

Though the originators of these open source programs did not design them all to work specifically with each other, the combination has become popular because of its low acquisition cost and because of the ubiquity of its components (which come bundled with most current Linux distributions). When used in combination they represent a solution stack of technologies that support application servers.

  • Very low cost compared to other technologies
  • GNU public licensing
  • LAMP available as free software
  • Best for Web applications
  • LAMP has been proven faster, more flexible, and easier than any alternative

How does LAMP Work?

LAMP is singularly focused towards Web applications. The architecture is very straightforward, as illustrated in diagram below. Linux forwards HTTP connections to Apache, which serves static content directly from the Linux kernel. Dynamic pages are forwarded by Apache to PHP, which runs the PHP code to design the page. Database queries are sent to MySQL through PHP. Administration is commonly handled through phpMyAdmin, and every major enterprise management system can manage Apache and Linux.