LAMP (software bundle)

From Wikipedia, the free encyclopedia

Jump to: navigation, search

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:

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.

Contents

[edit] History

The scripting component of the LAMP stack has its origins in the CGI web interfaces that became popular in the early 1990s. This technology allows the user of a web browser to execute a program on the web server, and to thereby receive dynamic as well as static content. Programmers used scripting languages with these programs because of their ability to manipulate text streams easily and efficiently, even when they originate from disparate sources. For this reason system designers often referred to such scripting systems as glue languages.

Michael Kunze coined the acronym LAMP in an article for the German computing magazine c't in April 1998.[2] The article aimed to show that a bundle of free software could provide a viable alternative to commercial packages. Knowing the IT-world's love of acronyms, Kunze came up with LAMP as a marketing-like term to increase the popularity of free software.[citation needed] O'Reilly and MySQL AB have made the term popular among English-speakers. Indeed, MySQL AB has since based some of its marketing efforts on the popularity of the LAMP stack.

[edit] Software

[edit] Linux

Linux is a Unix-like computer operating system kernel.

[edit] Apache

Apache is a free software/open source web server, the most popular in use.[3]

[edit] MySQL

MySQL is a multithreaded, multi-user, SQL Database Management System (DBMS) owned by Sun Microsystems with more than eleven million installations.[4][5]

[edit] Perl / PHP / Python

PHP is a reflective programming language originally designed for producing dynamic Web pages. PHP is used mainly in server-side application software, but can be used from a command line interface or in standalone graphical applications.

The three are all used: one review of the platform goes so far as to say "Let the P stand for Programming language like PHP, Perl , Python and Ruby."[6]

[edit] Variants and alternatives

Some developers prefer to use the M to mean mod perl or mod python and the P to mean PostgreSQL, reversing the M and the P in functionality. The acronym "LAMR" is occasionally used, to indicate Ruby on Rails in place of PHP.

Another variant designates the M to be Middleware (including Ruby, Perl, Python etc.) and the P to be PostgreSQL.

Yet another variant has the M as mSQL, an alternative open source database.

Other such stacks include unified application development environments such as Apple Inc.'s WebObjects, Java/Java EE, Grails, and Microsoft's .NET architecture.

Similarly, the L is occasionally replaced with an M (for Mac OS X), D (for Darwin OS), B (for BSD Unix variants), S (for Sun Solaris) or W (for Microsoft Windows). In the case of Microsoft Windows, the A can be replaced with an I (for IIS) to create the acronym WIMP.

Another variant is LAMA: Linux Apache Mono Asp.net

[edit] See also

[edit] References

[edit] External links

Personal tools