# Servidor d'aplicacions

Un servidor d'aplicacions és un motor que ofereix serveis d'aplicacions a clients o dispositius. A més, un servidor d'aplicacions se'n cuida de la majoria, sinó tota, la lògica de negoci i accés a les dades de l'aplicació. El principal benefici d'un servidor d'aplicacions és la facilitat de desenvolupament de programari, perquè les eines no necessiten ser programades; al seu lloc, són ensamblades a partir de la construcció de blocs sobre el servidor d'aplicacions. Per exemple, una wiki és un servidor d'aplicacions per construir contingut dinàmic ensamblat per articles. Encara més, la wikipedia és una wiki ensamblada que proveeix una enciclopèdia emmagatzemada en un sistema de fitxers, amb canvis respecte a l'enciclopèdia guardada a la base de dades.
Encara que el terme servidor d'aplicacions s'aplica a totes les plataformes, ha esdevingut fortament identificat amb la plataforma J2EE; tanmateix, també es refereix a servidors d'aplicacions basades en web, com plataformes integrades per comerç electrònic, gestors de continguts o generadors de llocs web.

## Característiques

Habitualment els servidors d'aplicacions inclouen middleware per habilitar les aplicacions per intercomunicar-se amb aplicacions dependents, com servidors web, sistemes gestors de bases de dades i aplicacions de gràfics.

## Història

A finals dels anys 90, es creia que era probable que hi hagués una transició massiva cap a servidors d'aplicacions centralitzats, i que els ordinadors de sobretaula serien reemplaçats per ordinadors en xarxa lleugers. Això hagués representat un retorn al model més antic d'ordinadors, el dels anys 60, amb un gran ordinador central que és atacat per múltiples usuaris usant terminals babaus. La diferència ara és que les Interfícies gràfiques d'usuari (GUI) estan molt popularitzades. Certs productes, com el WinFrame de Citrix és bastant usat, permetent que usuaris estàndards de Windows de Microsoft executessin aplicacions sobre un servidor NT i foren accedides des d'una ampla varietat de clients, incloent plataformes no Windows, com ara els Mac i Unix. Actualment, la tendència és lliurar aplicacions a través d'un navegador o altre dispositiu d'internet.

## Servidors d'aplicacions Java
### Servidors J2EE

Seguint l'èxit de la Plataforma Java, el terme servidor d'aplicacions de vegades es refereix a un servidor d'aplicacions J2EE. Entre els servidors d'aplicacions J2EE comercials coneguts hi ha el WebLogic (BEA), JBoss (Red Hat), WebSphere (IBM), JRun (Adobe), Geronimo Application Server (Apache) i Oracle OC4j (Oracle).
El servidor d'aplicacions JOnAS, desenvolupat pel consorci ObjectWeb, és el primer servidor d'aplicacions no comercial i de codi obert que ha aconseguit el certificat d'acompliment per la certificació J2EE. Els mòduls web són servlets i JavaServer Pages i la lògica de negoci en Enterprise JavaBeans. J2EE porta estàndards per contenir components Web. Tomcat d'Apache i JOnAS d'ObjectWeb són contenidors típics on posar aquests mòduls. Ambdues organitzacions distribuexien el codi de format oberta i lliure (codi obert).
Una JavaServer Page (JSP) és un servlet de Java que s'executa en un contenidor Web, l'equivalent en Java als scripts CGI. Els JSPs són una manera de crear planes HTML incrustant-hi referències a la lògica del servidor dintre de la pàgina. Els programadors d'HTML i Java poden treballar braç a braç referenciant un el codi de l'altre des del propi. JavaBeans són els components de classe independents de l'arquitectura Java 2 de Sun.
Els servidors d'aplicacions dalt esmentats principalment serveixen aplicacions Web. Alguns servidors d'aplicacions s'orienten a xarxes diferents del Web : servidors SIP, per exemple, cap a xarxes de telefonia.

### Servidors no J2EE

A part dels servidors J2EE, també coneguts com a servidors d'aplicacions EJB, hi ha altres tipus de servidors d'aplicacions, per exemple, els servidor d'aplicacions POJO, usa el llenguatge Java com la seva especificació i també és anomenat com el component que executa, una aplicació Java.

## Altres plataformes

El terme servidor d'aplicacions també ha estat aplicat a diferents productes no-J2EE i no-Java. Per exemple, amb la creixent popularitat de .NET, Microsoft pot presumir de vendre un servidor d'aplicacions. Addicionalment, altres fabricants distribueixen d'altres servidors d'aplicacions de codi obert. Alguns exemples són: Appaserver, Base4, Concept, TurboMiddleware Arxivat 2007-03-15 a Wayback Machine., Zope.

## Avantatges dels servidors d'aplicacions
### Integritat de codi i dades

Amb la centralització de la lògica de negoci en un servidor o un nombre petit de servidors, es poden garantir les actualitzacions i millores de l'aplicació. No hi ha risc de versions antigues de l'aplicació accedint o manipulant dades d'una manera antiga o incompatible.

### Configuració centralitzada

Els canvis a la configuració de l'aplicació, com un canvi de servidor de la base de dades o la configuració del sistema, poden ser fets de manera centralitzada.

### Seguretat

Un punt central a través del qual es poden manejar tant l'accés a dades, com porcions de l'aplicació en si mateixa pot ser considerat un benefici de seguretat, delegant la responsabilitat sobre l'autenticació lluny de la capa de client, potencialment insegura, sense exposar la capa de base de dades.

### Rendiment

Limitant el cabal de dades per la xarxa al de la capa de presentació, es considera que el model client servidor millora el rendiment de grans aplicacions en entorns d'ús elevat.

### Cost total de propietat (TCO)

Combinats tots els beneficis esmentats, se suposa que representen un estalvi de cost a l'empresa a l'hora de desenvolupar Aplicacions d'empresa. A la pràctica, tanmateix, els reptes tècnics d'escriure aplicacions que acompleixen el paradigma combinat amb la necessitat de la distribució de programari a clients distribuïts esmorteeix aquests beneficis.

## Vegeu també

* Servidor
* Servidor web
* Client-servidor