Application server: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
+{{Interfacce web}} |
||
(39 versioni intermedie di 27 utenti non mostrate) | |||
Riga 1:
In [[informatica]] un '''application server''' (a volte abbreviato con la sigla '''AS''') è una tipologia di [[server]] che fornisce l'[[infrastruttura]] e le funzionalità logiche di supporto, sviluppo ed [[Esecuzione (informatica)|esecuzione]] di [[applicazione (informatica)|applicazioni]] nonché altri componenti [[server]] in un contesto [[sistema distribuito|distribuito]]. Si tratta di un complesso di servizi orientati alla realizzazione di applicazioni ad [[Architettura multi-tier|architettura multilivello]] ed enterprise, con alto grado di complessità, spesso orientate per il [[World Wide Web|web]] ([[Applicazione
==Descrizione==
=== Struttura modulare ===
L'application server è composto da [[modulo (programmazione)|moduli]] realizzati secondo [[Standard (informatica)|standard]] ben definiti ed accettati dalla comunità mondiale dei [[programmatori]]. Un esempio di questi standard è il [[Protocollo di rete|protocollo]]
[[
Al suo interno, un application server dispone di componenti che consentono ad un'applicazione di lavorare facilmente con lo standard HTTP.
Riga 17:
=== Tecnologie disponibili ===
Allo stato attuale delle cose, le [[Tecnologia|tecnologie]] su cui possono basarsi gli application server sono diverse: [[Microsoft .NET]], [[Java (linguaggio di programmazione)|Java]] di [[
Gli standard di Java non sono unicamente frutto prima della [[Sun Microsystem]] e adesso di [[Oracle Corporation]], ma sono il risultato di un rapporto sinergico tra
Nel mondo Java, gli application server compatibili con le specifiche della Sun sono detti [[application server J2EE]].
Riga 26:
L'adozione di application server offre particolari benefici soprattutto nei settori dello sviluppo, dell'esecuzione e della gestione integrata dei [[Sistema (informatica)|sistemi]]. I principali vantaggi possono essere così riassunti:
* ''Semplificazione delle attività di sviluppo:'' gli application server creano un ambiente nel quale si possono utilizzare gli strumenti di sviluppo più diffusi sul mercato, consentendo di produrre e distribuire rapidamente applicazioni transazionali altamente scalabili. In generale, questi ambienti comprendono [[modello di sviluppo del software|modelli]] e strumenti di ausilio per sviluppare le applicazioni, riducendo i tempi di realizzazione e messa in esercizio dei programmi negli ambienti distribuiti.
* ''Supporto'' di vari [[linguaggio di programmazione|linguaggi]], strumenti e [[piattaforma (informatica)|piattaforme software]]: a seconda dell'application server utilizzato, le applicazioni possono essere scritte nel linguaggio preferito dal [[programmatore]].
* ''Riusabilità del codice:'' la [[riuso di codice|riusabilità del codice]] deriva sia dalla [[programmazione orientata agli oggetti]] spesso utilizzata in questi casi, sia dall'utilizzo dell'approccio a componenti. Una volta sviluppata la logica applicativa, essa può essere condivisa e riutilizzata.
* ''Gestione delle [[Transazione (basi di dati)|transazioni]]''. L'application server facilita la gestione delle operazioni basate su transazioni, assicurando l'integrità transazionale e gestione affidabile dei [[back-end]] multipli per le risorse e i [[dati]]. Il sistema di gestione delle transazioni gestisce le interazioni con i [[database]] e le funzioni di [[controllo versione|commit]], [[rollback]] e [[recupero dati|recovery]].▼
* ''Alte prestazioni''. Gli application server offrono caratteristiche architetturali che permettono di erogare elevate prestazioni quali il [[multithreading]], il bilanciamento dinamico dei [[Carico di sistema|carichi]] di lavoro (''[[load balancing]]''), il caching e il [[pooling]] degli [[Oggetto (informatica)|oggetti]] e delle [[Connessione (informatica)|connessioni]] ai database.▼
▲* ''Gestione delle [[Transazione (basi di dati)|transazioni]]''. L'application server facilita la gestione delle operazioni basate su transazioni, assicurando l'integrità transazionale e gestione affidabile dei [[back-end]] multipli per le risorse e i [[dati]]. Il sistema di gestione delle transazioni gestisce le interazioni con i [[database]] e le funzioni di [[controllo versione|commit]], [[rollback]] e [[recovery]].
* ''Scalabilità''. Gli application server supportano il partizionamento delle applicazioni e la distribuzione in [[Rete informatica|rete]] dei componenti. I sistemi [[multiprocessore]] e i [[computer cluster|cluster]] di application server assicurano la [[scalabilità]] necessaria a gestire anche un gran numero di utenti concorrenti.
▲* ''Alte prestazioni''. Gli application server offrono caratteristiche architetturali che permettono di erogare elevate prestazioni quali il [[multithreading]], il bilanciamento dinamico dei [[Carico di sistema|carichi]] di lavoro (''[[load balancing]]''), il caching e il [[pooling]] degli [[Oggetto (informatica)|oggetti]] e delle [[Connessione (informatica)|connessioni]] ai database.
* ''Estendibilità''. L'architettura modulare degli application server e il supporto per i server e per i moduli applicativi che possono essere caricati dinamicamente, consente alle aziende di estendere facilmente le funzionalità dei loro sistemi e delle relative applicazioni.
* ''Robustezza''. L'architettura basata sui componenti degli application server e il bilanciamento dinamico dei carichi assicurano l'alta [[disponibilità]] dei sistemi. I componenti del server e la logica applicativa possono essere riconfigurati, aggiunti o rimossi senza interruzioni nell'erogazione dei servizi agli utenti. Queste caratteristiche sono particolarmente importanti per garantire l'alta disponibilità del sistema, requisito necessario per il buon esito delle operazioni mission-critical aziendali.
* ''Sicurezza''. Gli application server offrono funzioni specifiche di sicurezza [[end-to-end]], necessarie per l'esecuzione delle applicazioni aziendali che richiedono particolari misure di sicurezza e riservatezza dei dati. Per le comunicazioni tra [[client]] e server, vengono impiegati [[Algoritmo|algoritmi]] standard e ampiamente testati e collaudati sul web, come quelli offerti dal protocollo [[Transport Layer Security|SSL]]. Il
==Server per applicazioni web==
{{Vedi anche|Server per applicazioni web}}
==Voci correlate==
* [[Java Naming and Directory Interface]]
== Collegamenti esterni ==
* {{
* {{en}}[http://www.jboss.org/ JBoss]: application server J2EE open source
* {{en}}[
* {{en}}[http://www.oracle.com/us/products/middleware/application-server/index.html WebLogic]: application server commerciale di [[Oracle Corporation]] (ex. [[BEA Systems]])
*[[GlassFish]] : Open Source Java Application Server
* [http://www.oracle.com/lang/it/appserver/index.html Oracle AS 10g]: application server commerciale di Oracle
* {{cita web |1=http://jbossitalia.altervista.org |2=News e tutorial su svariati Application Server |accesso=16 febbraio 2019 |urlarchivio=https://web.archive.org/web/20161113003726/http://jbossitalia.altervista.org/ |dataarchivio=13 novembre 2016 |urlmorto=sì }}
{{Interfacce web}}
{{Portale|internet|telematica}}
[[Categoria:Framework per applicazioni web]]
|