Software stack
This article needs additional citations for verification. (July 2009) |
In computing, a solution stack is a set of software subsystems or components needed to deliver a fully functional solution, e.g. a product or service.
For example, to develop a web application, the designer needs to use an operating system, web server, database and programming language. Another version of a solution stack is operating system, middleware, database, and applications.[1]
Linux-based solution stacks
One of the many possible solution stacks available is LAMP:[2]
- Linux (the operating system)
- Apache (the web server)
- MySQL (the database management system)
- Perl, PHP, or Python (scripting languages)
In the Erlang world, there is also the LYME stack of:
- Linux (operating system)
- Yaws (web server)
- Mnesia (database)
- Erlang (functional programming language)
With the advent of the document database CouchDB the LYCE stack where Mnesia is supplemented with CouchDB has been proposed as a realistic alternative, of course using CouchDB doesn't preclude the use of Mnesia.
Windows-based solution stacks
Another common stack (WINS) is the Windows alternative to LAMP:
- Windows Server (operating system)
- Internet Information Services (web server)
- .NET (programming languages)
- SQL Server (database)
It is also common to see Access used for the database, as many Windows-based websites are hosted on shared web servers, which either do not support Microsoft SQL Server or make it expensive for the hobbyist or small business.
WIMP is the same stack with MySQL replacing SQL Server, and PHP replacing ASP.NET.
Recently (as the other layers became more compatible with Windows) WAMP has become more popular as a more literal Windows alternative to LAMP, using: Windows, Apache, MySQL, and Perl/PHP/Python.
Other solution stacks
Similarly, MAMP for Mac OS X, Apache, MySQL, and Perl/PHP/Python.
Another example is the OpenACS stack which comprises:
- Linux or Windows (operating system)
- AOLserver (web server)
- PostgreSQL or Oracle (database)
- Tcl (scripting language)
See also
References
- ^ Mimoso, Michael S. (24 February 2003). "Red Hat: Linux served at vertical data center dinner tables". SearchEnterpriseLinux.com. Retrieved 2009-08-09.
- ^ Vervest, Peter H.M. (2008). Peter H. M. Vervest, Diederik W. van Liere, Li Zheng (ed.). The Network Experience: New Value from Smart Business Networks. Springer. p. 370. ISBN 3540855807.
{{cite book}}
: Unknown parameter|coauthors=
ignored (|author=
suggested) (help)CS1 maint: multiple names: editors list (link)