Pilha de soluções - Solution stack
Na computação , uma pilha de solução ou pilha de software é um conjunto de subsistemas ou componentes de software necessários para criar uma plataforma completa de forma que nenhum software adicional seja necessário para dar suporte aos aplicativos. Diz-se que os aplicativos "rodam" ou "rodam sobre" a plataforma resultante.
Por exemplo, para desenvolver um aplicativo da web, o arquiteto define a pilha como o sistema operacional , servidor da web , banco de dados e linguagem de programação de destino . Outra versão de uma pilha de software é o sistema operacional, middleware , banco de dados e aplicativos. Regularmente, os componentes de uma pilha de software são desenvolvidos por desenvolvedores diferentes, independentemente uns dos outros.
Alguns componentes / subsistemas de um sistema geral são escolhidos juntos com freqüência suficiente para que o conjunto específico seja referido por um nome que representa o todo, em vez de nomear as partes. Normalmente, o nome é um acrônimo que representa os componentes individuais.
O termo "pilha de soluções" tem, historicamente, ocasionalmente incluído componentes de hardware como parte de um produto final, combinando hardware e software em camadas de suporte.
Um desenvolvedor full-stack é esperado para ser capaz de trabalhar em todas as camadas da pilha. Um desenvolvedor da Web full-stack pode ser definido por alguns como um desenvolvedor ou engenheiro que trabalha com o front-end e o back-ends de um site ou aplicativo. Isso significa que eles podem liderar construções de plataforma que envolvem bancos de dados, sites voltados para o usuário e trabalhar com clientes durante a fase de planejamento de projetos.
Exemplos
- BCHS
- OpenBSD (sistema operacional)
- C (linguagem de programação)
- httpd (servidor web)
- SQLite (banco de dados)
- ELK
- Elasticsearch ( mecanismo de pesquisa )
- Logstash ( ferramenta de gerenciamento de eventos e registros )
- Kibana ( visualização de dados )
- Ganeti
- Xen ou KVM ( hipervisor )
- Linux com LVM (gerenciamento de dispositivo de armazenamento em massa)
- Dispositivo de bloco replicado distribuído ( replicação de armazenamento )
- Ganeti ( ferramenta de gerenciamento de cluster de máquina virtual )
- Ganeti Web Manager (interface da web)
- COPO
- GemStone (banco de dados e servidor de aplicativos)
- Linux (sistema operacional)
- Apache (servidor web)
- Smalltalk (linguagem de programação)
- Seaside (estrutura da web)
- GRANDstack
- GraphQL (linguagem de consulta e manipulação de dados)
- React (apresentação de aplicativo da web)
- Apollo (plataforma de gráfico de dados)
- Neo4j ( sistemas de gerenciamento de banco de dados )
- Jamstack
- JavaScript (linguagem de programação)
- APIs (interfaces de programação de aplicativos)
- Marcação (conteúdo)
- LUMINÁRIA
- Linux (sistema operacional)
- Apache (servidor web)
- MySQL ou MariaDB ( sistemas de gerenciamento de banco de dados )
- Perl , PHP ou Python ( linguagens de script )
- LAPP
- Linux (sistema operacional)
- Apache (servidor web)
- PostgreSQL (sistemas de gerenciamento de banco de dados)
- Perl , PHP ou Python (linguagens de script)
- SALTO
- Linux (sistema operacional)
- Eucalyptus (alternativa gratuita e de código aberto ao Amazon Elastic Compute Cloud )
- AppScale (estrutura de computação em nuvem e alternativa gratuita e de código aberto ao Google App Engine )
- Python (linguagem de programação)
- LEMP / LNMP
- Linux (sistema operacional)
- Nginx (servidor web)
- MySQL ou MariaDB (sistemas de gerenciamento de banco de dados)
- Perl , PHP ou Python (linguagens de script)
- LLMP
- Linux (sistema operacional)
- Lighttpd (servidor web)
- MySQL ou MariaDB (sistemas de gerenciamento de banco de dados)
- Perl , PHP ou Python (linguagens de script)
- LYME e LYCE
- Linux (sistema operacional)
- Yaws (servidor da web, escrito em Erlang )
- Mnesia ou CouchDB (banco de dados, escrito em Erlang )
- Erlang (linguagem de programação funcional)
- MAMP
- Mac OS X (sistema operacional)
- Apache (servidor web)
- MySQL ou MariaDB (banco de dados)
- PHP , Perl ou Python (linguagens de programação)
- MARQS
- Apache Mesos (inicialização / desligamento do nó)
- Akka (kit de ferramentas) (implementação de ator)
- Riak (armazenamento de dados)
- Apache Kafka (mensagens)
- Apache Spark (big data e MapReduce)
- QUER DIZER
- MongoDB (banco de dados)
- Express.js (camada de controlador de aplicativo)
- AngularJS / Angular (apresentação de aplicativo da web)
- Node.js (tempo de execução JavaScript)
- MERN
- MongoDB (banco de dados)
- Express.js (camada de controlador de aplicativo)
- React.js (apresentação de aplicativo da web)
- Node.js (tempo de execução JavaScript)
- MEVN
- MongoDB (banco de dados)
- Express.js (camada de controlador de aplicativo)
- Vue.js (apresentação de aplicativo da web)
- Node.js (tempo de execução JavaScript)
- OpenACS
- Linux ou Windows (sistema operacional)
- NaviServer (servidor web)
- OpenACS ( estrutura de aplicativo da web )
- PostgreSQL ou banco de dados Oracle (banco de dados)
- Tcl (linguagem de script)
- PERN
- PostgreSQL (banco de dados)
- Express.js (camada de controlador de aplicativo)
- React (biblioteca JavaScript) (apresentação de aplicativo da web)
- Node.js (tempo de execução JavaScript)
- PLONK
- Prometheus (métricas e séries temporais)
- Linkerd (malha de serviço)
- OpenFaaS (gerenciamento e escalonamento automático de computação)
- NATS (barramento / fila de mensagem assíncrona)
- Kubernetes (declarativo, extensível, escalonável , clustering de autocura)
- SMACK
- Apache Spark (big data e MapReduce)
- Apache Mesos ( inicialização / desligamento do nó )
- Akka (kit de ferramentas) ( implementação de ator )
- Apache Cassandra (banco de dados)
- Apache Kafka ( mensagens )
- T-REx
- TerminusDB ( banco de dados gráfico escalonável )
- React ( estrutura da web JavaScript )
- Express .js (estrutura para Node.js )
- WAMP
- Windows (sistema operacional)
- Apache (servidor web)
- MySQL ou MariaDB (banco de dados)
- PHP , Perl ou Python (linguagem de programação)
- WIMP
- Windows (sistema operacional)
- Serviços de Informações da Internet (servidor da web)
- MySQL ou MariaDB (banco de dados)
- PHP , Perl ou Python (linguagem de programação)
- WINS
- Windows Server (sistema operacional)
- Serviços de Informações da Internet (servidor da web)
- .NET ( estrutura de software )
- SQL Server (banco de dados)
- WISA
- Windows Server (sistema operacional)
- Serviços de Informações da Internet (servidor da web)
- SQL Server (banco de dados)
- ASP.NET (estrutura da web)
- WISAV / WIPAV
- Windows Server (sistema operacional)
- Serviços de Informações da Internet (servidor da web)
- Microsoft SQL Server / PostgreSQL (banco de dados)
- ASP.NET (estrutura da web de back-end)
- Vue.js (framework da web front- end)
- XAMPP
- plataforma cruzada (sistema operacional)
- Apache (servidor web)
- MariaDB ou MySQL (banco de dados)
- PHP (linguagem de programação)
- Perl (linguagem de programação)
- XRX
- Banco de dados XML (banco de dados como BaseX , eXist , MarkLogic Server )
- XQuery (linguagem de consulta)
- REST ( interface do cliente )
- XForms (cliente)
Veja também
- Estrutura de gerenciamento de conteúdo
- Sistema de gerenciamento de conteúdo
- Lista de pacotes Apache – MySQL – PHP
- Lista de pacotes Nginx – MySQL – PHP
- Framework da web