Application server: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 25:
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|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 (database)|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 [[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 [[logging]] e il [[tracking]] degli eventi forniscono protezione dagli accessi non autorizzati.