پشته راه‌حل

در علم رایانش یک پشته راه‌حل  یا یک پشته نرم‌افزاری مجموعه‌ای از زیرسیستم‌ها یا اجزای نرم‌افزاری است که برای ساخت یک سکوی رایانش به آن نیاز می‌باشد، این مجموعه باید کافی باشد، یعنی به هیچ نرم‌افزار اضافی دیگری برای پشتیبانی از برنامه کاربردی نیاز نباشد. در اصطلاح گفته می‌شود که پس از ایجاد سکوی رایانش، برنامه‌های کاربردی «روی سکو اجرا می‌شوند» یا «در بالای سکو اجرا می‌شوند».

برای مثال، برای ساخت یک برنامه کاربردی وب، معماری پشته شامل «سیستم عامل، سرور وب، پایگاه داده، و زبان برنامه‌نویسی» می‌باشد. یک ورژن دیگر از پشته نرم‌افزاری «سیستم عامل، میان افزار، پایگاه داده، و برنامه کاربردی» می‌باشد. به صورت معمول، اجزای پشته نرم‌افزاری توسط توسعه دهندگان مختلف، به صورت مستقل از یکدیگر توسعه می‌یابند.

بعضی از اجزا/زیرسیستم‌های یک سیستم کل، آنقدر با هم به کار می‌روند که به جای آنکه اجزا نامگذاری جداگانه داشته باشند، برای ترکیب آن‌ها یک نام به کار می‌رود، و این نام نشان دهندهٔ کل آنها می‌باشد. این نام معمولاً یک کوته‌نوشت است که نمایش دهندهٔ اجزای به خصوص آن است.

عبارت «پشته راه حل» بعضی مواقع، به صورت تاریخی، به عنوان بخشی از راه حل کلی، شامل اجزای سخت‌افزاری می‌باشد، و این به معنی ترکیب لایه‌های پشتیبانی سخت‌افزاری و لایه‌های پشتیبانی نرم‌افزاری است.

مثال‌ها 
در ادامه چندین پشته راه حل برای ذکر مثال آمده‌است:

 BCHS
 OpenBSD (operating system)
 C (programming language)
 httpd (web server)
 SQLite (database)
 ELK
 Elasticsearch (search engine)
 Logstash (event and log management tool)
 Kibana (data visualization)
 Ganeti
 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
 GemStone (database and application server)
 Linux (operating system)
 Apache (web server)
 Smalltalk (programming language)
 Seaside (web framework)
 GRANDstack
 GraphQL (data query and manipulation language)
 React (web application presentation)
 Apollo (Data Graph Platform)
 Neo4j (database management systems)
 JAMstack
 JavaScript (programming language)
 APIs (Application programming interfaces)
 Markup (content)
 LAMP
 Linux (operating system)
 Apache (web server)
 MySQL or MariaDB (database management systems)
 Perl, PHP, or Python (scripting languages)
 LAPP
 Linux (operating system)
 Apache (web server)
 PostgreSQL (database management systems)
 Perl, PHP, or Python (scripting languages)
 LEAP
 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
 Linux (operating system)
 Nginx (web server)
 MySQL or MariaDB (database management systems)
 Perl, PHP, or Python (scripting languages)
 LLMP
 Linux (operating system)
 Lighttpd (web server)
 MySQL or MariaDB (database management systems)
 Perl, PHP, or Python (scripting languages)
 LYME and LYCE
 Linux (operating system)
 Yaws (web server, written in Erlang)
 Mnesia or CouchDB (database, written in Erlang)
 Erlang (functional programming language)
 MAMP
 Mac OS X (operating system)
 Apache (web server)
 MySQL or MariaDB (database)
 PHP, Perl, or Python (programming languages)
 MARQS
 Apache Mesos (node startup/shutdown)
 Akka (toolkit) (actor implementation)
 Riak (data store)
 Apache Kafka (messaging)
 Apache Spark (big data and MapReduce)
 MEAN
 MongoDB (database)
 Express.js (application controller layer)
 AngularJS/Angular (web application presentation)
 Node.js (web server)
 MERN
 MongoDB (database)
 Express.js (application controller layer)
 React.js (web application presentation)
 Node.js (web server)
 MEVN
 MongoDB (database)
 Express.js (application controller layer)
 Vue.js (web application presentation)
 Node.js (web server)
 NMP
 Nginx (web server)
 MySQL or MariaDB (database)
 PHP (programming language)
 OpenACS
 Linux or Windows (operating system)
 AOLserver (web server)
 OpenACS (web application framework)
 PostgreSQL or Oracle Database (database)
 Tcl (scripting language)
 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
 Apache Spark (big data and MapReduce)
 Apache Mesos (node startup/shutdown)
 Akka (toolkit) (actor implementation)
 Apache Cassandra (database)
 Apache Kafka (messaging)
 WAMP
 Windows (operating system)
 Apache (web server)
 MySQL or MariaDB (database)
 PHP, Perl, or Python (programming language)
 WIMP
 Windows (operating system)
 Internet Information Services (web server)
 MySQL or MariaDB (database)
 PHP, Perl, or Python (programming language)
 WINS
 Windows Server (operating system)
 Internet Information Services (web server)
 .NET (software framework)
 SQL Server (database)
 WISA
 Windows Server (operating system)
 Internet Information Services (web server)
 SQL Server (database)
 ASP.NET (web framework)
 XAMPP
 cross-platform (operating system)
 Apache (web server)
 MariaDB or MySQL (database)
 PHP (programming language)
 Perl (programming language)
 XRX
 XML database (database such as BaseX, eXist, MarkLogic Server)
 XQuery (Query language)
 REST (client interface)
 XForms (client)

منابع 

چارچوب‌های نرم‌افزاری تحت وب
رایانش