Solution stack
In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications.[1] Applications are said to "run on" or "run on top of" the resulting platform.
For example, to develop a web application, the architect defines the stack as the target operating system, web server, database, and programming language. Another version of a software stack is operating system, middleware, database, and applications.[2] Regularly, the components of a software stack are developed by different developers independently from one another.
Some components/subsystems of an overall system are chosen together often enough that the particular set is referred to by a name representing the whole, rather than by naming the parts. Typically, the name is an acronym representing the individual components.[3]
The term "solution stack" has, historically, occasionally included hardware components as part of a final product, mixing both the hardware and software in layers of support.[4][5]
A full-stack developer is expected to be able to work in all the layers of the application (front-end and back-end). A full-stack developer can be defined as a developer or an engineer who works with both the front and back end development of a website, web application or desktop application.[6] This means they can lead platform builds that involve databases, user-facing websites, and working with clients during the planning phase of projects.
Examples
OS-level stacks
- Ganeti[8]
- Xen or KVM (hypervisor)
- Linux with LVM (mass-storage device management)
- Distributed Replicated Block Device (storage replication)
- Ganeti (virtual machine cluster management tool)
- Ganeti Web Manager (web interface)
- GLASS[9]
- GemStone (database and application server)
- Linux (operating system)
- Apache (web server)
- Smalltalk (programming language)
- Seaside (web framework)
- LAMP[10]
- Linux (operating system)
- Apache (web server)
- MySQL or MariaDB (database management systems)
- Perl, PHP, or Python (scripting languages)
- LEAP[11]
- Linux (operating system)
- Eucalyptus (free and open-source alternative to the Amazon Elastic Compute Cloud)
- AppScale (cloud computing-framework and free and open-source alternative to Google App Engine)
- Python (programming language)
- LEMP/LNMP[12]
- Linux (operating system)
- Nginx (web server)
- MySQL or MariaDB (database management systems)
- Perl, PHP, or Python (scripting languages)
- LLMP[13]
- Linux (operating system)
- Lighttpd (web server)
- MySQL or MariaDB (database management systems)
- Perl, PHP, or Python (scripting languages)
- LYME and LYCE[14]
- Linux (operating system)
- Yaws (web server, written in Erlang)
- Mnesia or CouchDB (database, written in Erlang)
- Erlang (functional programming language)
- MAMP[15]
- Mac OS X (operating system)
- Apache (web server)
- MySQL or MariaDB (database)
- PHP, Perl, or Python (programming languages)
- LAPP[16]
- Linux (operating system)
- Apache (web server)
- PostgreSQL (database management systems)
- Perl, PHP, or Python (scripting languages)
- MLVN[17]
- MongoDB (database)
- Linux (operating system)
- Varnish (frontend cache)
- Node.js (JavaScript runtime)
- WAMP[18]
- Windows (operating system)
- Apache (web server)
- MySQL or MariaDB (database)
- PHP, Perl, or Python (programming language)
- WIMP[19]
- Windows (operating system)
- Internet Information Services (web server)
- MySQL or MariaDB (database)
- PHP, Perl, or Python (programming language)
- WINS[20]
- Windows Server (operating system)
- Internet Information Services (web server)
- .NET (software framework)
- SQL Server (database)
- WISA[21]
- Windows Server (operating system)
- Internet Information Services (web server)
- SQL Server (database)
- ASP.NET (web framework)
- WISAV/WIPAV
- Windows Server (operating system)
- Internet Information Services (web server)
- Microsoft SQL Server/PostgreSQL (database)
- ASP.NET (backend web framework)
- Vue.js (frontend web framework)
OS-agnostic web stacks
- ELK[22]
- Elasticsearch (search engine)
- Logstash (event and log management tool)
- Kibana (data visualization)
- GRANDstack[23]
- GraphQL (data query and manipulation language)
- React (web application presentation)
- Apollo (Data Graph Platform)
- Neo4j (database management systems)
- Jamstack[24]
- JavaScript (programming language)
- APIs (Application programming interfaces)
- Markup (content)
- MARQS[10]
- Apache Mesos (node startup/shutdown)
- Akka (toolkit) (actor implementation)
- Riak (data store)
- Apache Kafka (messaging)
- Apache Spark (big data and MapReduce)
- MEAN[10]
- MongoDB (database)
- Express.js (application controller layer)
- AngularJS/Angular (web application presentation)
- Node.js (JavaScript runtime)
- MERN[25]
- MongoDB (database)
- Express.js (application controller layer)
- React.js (web application presentation)
- Node.js (JavaScript runtime)
- MEVN[26]
- MongoDB (database)
- Express.js (application controller layer)
- Vue.js (web application presentation)
- Node.js (JavaScript runtime)
- OpenACS[28]
- NaviServer (web server)
- OpenACS (web application framework)
- PostgreSQL or Oracle Database (database)
- Tcl (scripting language)
- PERN[29]
- PostgreSQL (database)
- Express.js (application controller layer)
- React (JavaScript library) (web application presentation)
- Node.js (JavaScript runtime)
- PLONK
- Prometheus (metrics and time-series)
- Linkerd (service mesh)
- OpenFaaS (management and auto-scaling of compute)
- NATS (asynchronous message bus/queue)
- Kubernetes (declarative, extensible, scale-out, self-healing clustering)
- SMACK[10]
- Apache Spark (big data and MapReduce)
- Apache Mesos (node startup/shutdown)
- Akka (toolkit) (actor implementation)
- Apache Cassandra (database)
- Apache Kafka (messaging)
- T-REx[30]
- TerminusDB (scalable graph database)
- React (JavaScript web framework)
- Express.js (framework for Node.js)
- XAMPP[31]
- cross-platform (operating system)
- Apache (web server)
- MariaDB or MySQL (database)
- PHP (programming language)
- Perl (programming language)
- XRX[32]
- XML database (database such as BaseX, eXist, MarkLogic Server)
- XQuery (Query language)
- REST (client interface)
- XForms (client)
See also
- Content management framework
- Content management system
- List of Apache–MySQL–PHP packages
- Web framework
References
- ↑ "Solution stack". Computer Desktop Encyclopedia. The Computer Language Company. 2015. https://encyclopedia2.thefreedictionary.com/Solution+stack. Retrieved 5 July 2018.
- ↑ Mimoso, Michael S. (24 February 2003). "Red Hat: Linux served at vertical data center dinner tables". SearchEnterpriseLinux.com. http://searchenterpriselinux.techtarget.com/news/interview/0,289202,sid39_gci880604,00.html.
- ↑ Beal, V. (7 September 2007). "Acronym Guide to Web Stacks". Webopedia. Quinstreet, Inc. https://www.webopedia.com/quick_ref/webstack_acronyms.asp.
- ↑ Ferguson, R. (2002). Using Microsoft SharePoint Portal Server. Que Publishing. p. 616. ISBN 9780789725707. https://books.google.com/books?id=d4n0ZGQYQL8C&pg=PA616.
- ↑ Anderson, G.W. (2003). SAP Planning: Best Practices in Implementation. Sams. p. 13. ISBN 9780789728753.
- ↑ Amir, Masroor. "Full Stack Developer - Complete Roadmap | Technologies in 2023" (in en). https://www.thegeeksbot.com/2023/03/full-stack-developer-complete-roadmap.html.
- ↑ Dzonsons, K.. "BCHS Stack". http://www.learnbchs.org/.
- ↑ "Ganeti installation tutorial". Ganeti Documentation. Google, Inc. http://docs.ganeti.org/ganeti/master/html/install.html.
- ↑ Glynn, A. (3 June 2015). "A Beginners' Guide to Installing and Configuring GLASS: Gemstone 64/S Smalltalk / Seaside / Application Server / Object Database Server Environment". Horizons of Identity. https://kalountos.wordpress.com/2015/06/03/a-beginners-guide-to-installing-and-configuring-glass-gemstone-64s-smalltalk-seaside-application-server-object-database-server-environment/.
- ↑ 10.0 10.1 10.2 10.3 Frampton, M. (2018). Complete Guide to Open Source Big Data Stack. Apress. p. 7. ISBN 9781484221495. https://books.google.com/books?id=Y8FHDwAAQBAJ&pg=PA7.
- ↑ Kaisler, S.H.; Amour, F.; Espinosa, A.; Money, W.H. (2015). Obtaining Value from Big Data for Service Delivery. Business Expert Press. p. PT69. ISBN 9781631572234. https://books.google.com/books?id=ajM_CwAAQBAJ&pg=PT69.
- ↑ "LEMP Stack Info". LEMP.io. https://lemp.io/.
- ↑ Johnston, C. (18 February 2009). "Setting up a LLMP Stack (Linux, Lighttpd, MySQL, PHP5) on Ubuntu 8.10". ChrisJohnston.org. http://www.chrisjohnston.org/ubuntu-tutorials/setting-up-a-llmp-stack-linux-lighttpd-mysql-php5-on-ubuntu-810.
- ↑ "Solution Stack". Idiosyncratic Knowledge. 9 July 2016. http://idioknowledge.blogspot.com/2016/07/solution-stack.html.
- ↑ Coucouvanis, N. (2007). "Get Your Wiki On". Mac Life (5): 83–86. https://books.google.com/books?id=3gIAAAAAMBAJ&pg=PA85. Retrieved 6 July 2018.
- ↑ Rittinghouse, J.W.; Ransome, J.F. (2017). Cloud Computing: Implementation, Management, and Security. CRC Press. p. PT184. ISBN 9781351615365. https://books.google.com/books?id=jB-9DgAAQBAJ&pg=PT184.
- ↑ Sharma, A. (2018). "Chapter 2: Introducing MEVN". Full-Stack Web Development with Vue.js and Node. Packt Publishing Ltd. pp. 6–30. ISBN 9781788830775. https://books.google.com/books?id=3EBbDwAAQBAJ&pg=PA6.
- ↑ "WAMP". Softaculous Ltd. http://ampps.com/wamp.
- ↑ "Tutorial: Installing a WIMP Server on an Amazon EC2 Instance Running Windows Server". AWS Documentation. Amazon Web Services, Inc. https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/install-WIMP.html.
- ↑ Evgen (28 January 2018). "How to Choose Your Technology Stack for Web Development". GBKSOFT Blog. GBKSOFT Dev LLC. https://gbksoft.com/blog/how-to-choose-your-technology-stack/.
- ↑ Sachdeva, B. (27 May 2009). "Which Web Application Stack Is Best for Me?". developer.com. QuinStreet, Inc. https://www.developer.com/design/article.php/3822286/Which-Web-Application-Stack-Is-Best-for-Me.htm.
- ↑ Chhajed, S. (2015). "Chapter 1: Introduction to ELK Stack". Learning ELK Stack. Packt Publishing Ltd. pp. 1–22. ISBN 9781785886706. https://books.google.com/books?id=EfqoCwAAQBAJ&pg=PA1.
- ↑ "GRANDStack". https://grandstack.io/.
- ↑ "JAMstack". https://jamstack.org/.
- ↑ Wilson, E. (2018). "Chapter 1: Introduction to the MERN Stack". MERN Quick Start Guide. Packt Publishing Ltd. pp. 7–13. ISBN 9781787280045. https://books.google.com/books?id=HnxeDwAAQBAJ&pg=PA7.
- ↑ Sharma, A. (2018). "Chapter 1: Introducing MEVN". Full-Stack Web Development with Vue.js and Node. Packt Publishing Ltd. pp. 6–30. ISBN 9781788830775. https://books.google.com/books?id=3EBbDwAAQBAJ&pg=PA6.
- ↑ Luna, F. (2017). Programador Web Full Stack: Desarrollo frontend y backend. RedUSERS. pp. 17–18. https://books.google.com/books?id=VBVFDwAAQBAJ&pg=PA17.
- ↑ "OpenACS: What it is and why to use it". OpenACS.org. OpenACS Community. https://openacs.org/about/what-is-openacs.
- ↑ "Learn the PERN Stack by building a web app - Full video course" (in en). 2020-03-20. https://www.freecodecamp.org/news/learn-the-pern-stack-full-course/.
- ↑ "TerminusDB on Twitter" (in en). https://twitter.com/terminusdb/status/1313507776224690178.
- ↑ "XAMPP Apache + MariaDB + PHP + Perl". Apache Friends. https://www.apachefriends.org/index.html.
- ↑ McCreary, D.. "XRX". danmccreary.com. http://www.danmccreary.com/xrx/.
Original source: https://en.wikipedia.org/wiki/Solution stack.
Read more |