Ultima versione: 2.0.2-1

|
In breve |
|
|
Catalogo |
Sistema |
|
Categoria |
Server di applicazioni |
|
Volumi dell'utente |
sì |
|
Min. memoria |
160 MB |
|
Sistema operativo |
Linux |
|
Vincoli |
no |
|
Domande/commenti |
|
TOMCAT è un'appliance server Web basata su Sun Java Machine e Apache Tomcat, un contenitore di pagine Java Servlet e JavaServer sviluppato da Apache License. La documentazione principale di Tomcat si trova al sito tomcat.apache.org. Tomcat fornisce un supporto conforme agli standard per servlet e JSP. Tomcat può funzionare come server Web standalone o come server delle applicazioni.
TOMCAT presenta contenuto Web statico, distribuisce automaticamente le applicazioni Web, esegue servlet e pagine JavaServer da un volume di contenuti configurabile dall'utente. I percorsi ai documenti sono configurabili in modo che lo stesso volume venga condiviso fra più server Web e altre appliance che servono contenuto diverso.
TOMCAT serve il protocollo di HTTP/1.1 e HTTP/1.0 per i client Web e per AJP 1.3 per le richieste dai server front-end (es. Apache con mod_proxy_ajp).
Come i server WEBx, TOMCAT ha tre terminali di output generici che accedono ai servizi esterni dagli script sul volume di contenuto. Il terminale DB è utilizzato per accedere a diversi database; il terminale FS è utilizzato per accedere all'archiviazione dei file condivisi (mediante NFS); e il terminale AUX è creato per l'invio dei messaggi di posta elettronica a un server SMTP.
Il terminale di log dovrebbe essere utilizzato per connettere TOMCAT a un file system condiviso dove TOMCAT può archiviare i file di log.
La configurazione del server è definita usando varie proprietà. Queste proprietà sono state progettate per coprire la maggior parte delle varianti di utilizzo possibili, che sono comunque facili da configurare e solo in pochi casi richiedono di modificare le impostazioni di default
|
Nome |
Ultima versione |
OS |
Versione di Java |
Versione di Apache Tomcat |
|
TOMCAT |
2.0.2-1 |
CentOS 5.5 |
JDK 1.6.0.22 |
6.0.29 |
|
TOMCAT64 |
2.0.2-1 |
CentOS 5.5 (64 bit) |
JDK 1.6.0.22 |
6.0.29 |
Risorse per TOMCAT
|
Risorsa |
Minimo |
Massimo |
Predefinito |
|
CPU |
0,1 |
16 |
0,3 |
|
Memory (Memoria) |
160 MB |
4 G |
512 MB |
|
Larghezza di banda |
1 Mbps |
2 Gbps |
250 Mbps |
Risorse per TOMCAT64
|
Risorsa |
Minimo |
Massimo |
Predefinito |
|
CPU |
0,1 |
16 |
0,3 |
|
Memory (Memoria) |
160 MB |
64 G |
512 MB |
|
Larghezza di banda |
1 Mbps |
2 Gbps |
250 Mbps |
Tenere presente quanto segue:
Importante: TOMCAT ha restrizioni ereditate dal computer di java a 32 bit. Questo computer di java non può funzionare con più di circa 2,6 Gb di memoria; si raccomanda di non allocare più di 2,8 Gb di memoria per TOMCAT.
|
Risorsa |
Minimo |
Massimo |
Predefinito |
|
CPU |
0,1 |
16 |
0,3 |
|
Memory (Memoria) |
160 MB |
64 G |
512 MB |
|
Larghezza di banda |
1 Mbps |
2 Gbps |
250 Mbps |
Tenere presente quanto segue:
Importante: TOMCAT ha restrizioni ereditate dal computer di java a 32 bit. Questo computer di java non può funzionare con più di circa 2,6 Gb di memoria; si raccomanda di non allocare più di 2,8 Gb di memoria per TOMCAT.
|
Risorsa |
Minimo |
Massimo |
Predefinito |
|
CPU |
0,1 |
16 |
0,3 |
|
Memory (Memoria) |
160 MB |
64 G |
512 MB |
|
Larghezza di banda |
1 Mbps |
2 Gbps |
250 Mbps |
Si ricorda che:
Importante: TOMCAT ha restrizioni ereditate dal computer di java a 32 bit. Questo computer di java non può funzionare con più di circa 2,6 Gb di memoria; si raccomanda di non allocare più di 2,8 Gb di memoria per TOMCAT.
Requisiti di memoria per l'archiviazione delle sessioni dell'applicazione Java
Oltre alla memoria per le applicazioni Java, una quantità di memoria deve essere disponibile per archiviare le sessioni di applicazione. Ciascuna sessione vuota (senza dati aggiuntivi archiviati) usa circa 2kb di memoria. Questa memoria è usata durante la durata di vita della sessione (la predefinita è 30 min). È possibile configurare la durata di vita della sessione modificando o aggiungendo una sezione aggiuntiva al file di configurazione web.xml di un'applicazione. Per esempio includere questo codice per configurare la durata di vita della sessione a 1 minuto:
<session-config>
<session-timeout>1</session-timeout>
</session-config>
Se si prevedono visitatori unici per 10 k in 30 min, sono richiesti 20 MByte aggiuntivi di memoria libera. In generale: quantità di memoria richiesta = numero massimo di sessioni attive simultanee * dimensione media di una sessione.
Importante: Se non vi è abbastanza memoria disponibile, tomcat può non funzionare correttamente. Questo dipende dalle applicazioni di utente che sono eseguite in Tomcat e non è un limite dell'appliance stessa.
Terminali
|
Nome |
Direzione |
Protocollo |
Descrizione |
|
in |
in |
HTTP |
Serve le richieste HTTP che vengono dai client Web. Supporta HTTP/1.1, HTTP/1.0 e i protocolli di AJP. |
|
db |
out |
Qualsiasi |
Accesso a un server del database. L'uso è definito indipendentemente dagli script che risiedono sul volume di contenuto (se del caso). Questo terminale può essere lasciato non connesso se non viene utilizzato. |
|
fs |
out |
NFS |
Accesso a un file system di rete per l'archiviazione dei file condivisi, consentendo un accesso ai file di scrittura/lettura su NFS. L'uso è definito indipendentemente dagli script che risiedono sul volume di contenuto (se del caso). Il software sul volume di contenuto "vede" il file system remoto come /mnt/fs nello spazio del file system dell'appliance. Questo terminale può essere lasciato non connesso se non viene utilizzato. Il server connesso deve avere una condivisione di lettura/scrittura denominata /mnt/data su NFS. |
|
log |
out |
CIFS |
Accesso a un file system di rete basato su CIFS per l'archiviazione dei log IIS. Questo terminale può essere lasciato non connesso se non viene utilizzato. Il server connesso deve consentire gli accessi anonimi e avere una condivisione di lettura/scrittura denominata shared. |
|
aux |
out |
Qualsiasi |
Accesso a un server SMTP per l'invio della posta elettronica in uscita. |
|
net |
out |
Qualsiasi |
Output di gateway per l'accesso di subnet. |
|
mon |
out |
CCE |
Invia le statistiche sull'utilizzo delle risorse e le prestazioni all'appliance di MON. |
L'interfaccia predefinita è abilitata. È destinato per la diagnosi e la risoluzione dei problemi (su SSH). Le versioni future di questa appliance possono disabilitare l'accesso di SSH.
Volumi dell'utente
|
Volume |
Descrizione |
|
contenuto |
Volume per l'archiviazione delle applicazioni di Tomcat, dati di applicazioni, file temporanei e file di lavoro. Questo volume è usato soltanto se la proprietà content_on_fs è impostata su off. |
Proprietà
|
Nome di proprietà |
Tipo |
Descrizione |
|
content_on_fs |
Stringa |
Specifica se il contenuto è relativo al file system nel terminale FS oppure se è sul volume di contenuto. Predefinito: off (sul volume di contenuto) |
|
hostname |
Stringa |
Nome host del sito Web. Predefinito: host locale |
|
tomcat_port |
Numero intero |
Porta dove Tomcat ascolta le richieste HTTP in entrata. Valore predefinito: 8080 |
|
session_timeout |
Numero intero |
Timeout per la sessione utente, in minuti, in cui TOMCAT mantiene i dati associati alla sessione utente, in memoria. Predefinito: 30 |
|
max_connections |
Numero intero |
Numero massimo di connessioni concorrenti autorizzate. Quando questo numero viene raggiunto, le nuove connessioni sono comunque accettate ma la loro elaborazione è ritardata fino alla chiusura di un'altra connessione. Valore predefinito: 100 |
|
heap_size |
Numero intero |
Memoria allocata per heap di Java (l'opzione Java di -Xmx), in megabyte. Se 0, questo valore è calcolato automaticamente. Valore predefinito: 0 |
|
perm_size |
Numero intero |
Memoria allocata per gli oggetti permanenti di Java (opzione Java di -XX:PermSize), in megabyte. Se 0, questo valore è calcolato automaticamente. Valore predefinito: 0 |
|
app_base |
Stringa |
Directory principale per i documenti, file di lavoro e file temp. Una struttura tipica della directory ${catalina.base} di Tomcat verrà creato in questa cartella: condivisa per le librerie che sono comuni a tutte le applicazioni java; temporanea e di lavoro per i file di lavoro; e la sottodirectory definita in proprietà work_dir - analogo a ${catalina.base}/webapps. Predefinito: vuoto |
|
work_dir |
Stringa |
Directory in cui si trovano i documenti da servire. Utilizzato anche per scopo di distribuzione automatica. Maggiori informazioni sono disponibili al sito Web di Tomcat - Distribuzione automatica delle applicazioni. Predefinito: webapps |
|
fuso orario |
Stringa |
Specifica il fuso orario usato nell'appliance. Se questa proprietà è vuota, il fuso orario non è modificato e viene lasciato com'è. Un elenco di fusi orari supportati è disponibile qui. Predefinito: vuoto |
Registrazione delle proprietà
|
Nome di proprietà |
Tipo |
Descrizione |
|
logs_enabled |
Stringa |
Abilita o disabilita completamente la registrazione. Predefinito: no |
|
logs_base_dir |
Stringa |
Directory in cui sono archiviati i file di log. Predefinito: vuoto, i log sono messi nella radice del volume di NAS montato |
|
error_log_filename |
Stringa |
Prefisso di nome del file per il log di errori. Predefinito: catalina |
|
log_level |
Stringa |
Livello di registrazione. I valori sono, aumentando il livello di verbosità, SEVERO, AVVISO, INFO, CONFIG, BUONO, MOLTO BUONO, OTTIMO, TUTTO. La descrizione più dettagliata dei livelli di log è disponibile nella documentazione di Tomcat. Predefinito: INFO |
|
enable_access_log |
Stringa |
Abilita o disabilita il registro di accesso. Predefinito: no |
|
access_log_filename |
Stringa |
Prefisso di nome del file per il log di accesso Predefinito: access.log |
Contatori personalizzati
L'appliance di TOMCAT riporta i seguenti contatori personalizzati attraverso il terminale di MON. Questi contatori appartengono al gruppo di contatori di TOMCAT (TOMCAT64 in caso di TOMCAT64):
|
Nome di contatore |
Descrizione |
|
Classi caricate |
Numero di classi caricate |
|
Classi caricate in byte |
Numero di KB caricati |
|
Classi scaricate |
Numero di classi scaricate |
|
Le classi scaricate in byte |
Numero di KB scaricati |
|
Tempo di esecuzione di caricamento/scaricamento delle classi |
Tempo trascorso nell'esecuzione delle operazioni di caricamento e scaricamento delle classi |
|
Compilatore redatto |
Numero di attività di compilazione eseguite |
|
Compilatore non riuscito |
Numero di attività di compilazione non riuscite |
|
Compilatore invalido |
Numero di attività di compilazione invalidate |
|
Tempo di esecuzione compilatore |
Tempo trascorso nell'esecuzione dei compiti di compilazione |
|
Capacità di spazio di heap s0 |
Capacità restante corrente di spazio 0 |
|
Capacità di spazio di heap s1 |
Capacità restante corrente di spazio 1 |
|
Uso di spazio di heap s0 |
Spazio restante di spazio 0 |
|
Uso di spazio di heap s1 |
Uso restante di spazio 1 |
|
Capacità di spazio di heap eden |
Capacità di spazio corrente di eden |
|
Uso di spazio di heap eden |
Uso di spazio di eden |
|
Capacità di vecchio spazio di heap |
Capacità di vecchio spazio corrente |
|
Uso di vecchio spazio di heap |
Uso di vecchio spazio |
|
Capacità di spazio permanente di heap |
Capacità di spazio permanente corrente |
|
Uso di spazio permanente di heap |
Uso di spazio permanente |
|
Eventi GC di nuova generazione di heap |
Numero di eventi GC di nuova generazione di heap (GC - raccolta di garbage) |
|
Tempo GC di nuova generazione di heap |
Tempo di raccolta garbage di nuova generazione |
|
Numero di eventi GC di heap |
Numero di eventi GC completi |
|
Tempo GC completo di heap |
Tempo di raccolta di garbage completo |
|
Tempo GC totale di heap |
Tempo di raccolta totale di garbage |
|
Nuova generazione corrente di pool |
Capacità corrente di nuova generazione |
|
Pool min nuova generazione |
Capacità minima nuova generazione |
|
Nuova generazione di pool max |
Capacità max nuova generazione |
|
Vecchia generazione di pool corrente |
Capacità vecchia generazione corrente |
|
Vecchia generazione di pool minimo |
Capacità di vecchia generazione minima |
|
Vecchia generazione di pool max |
Capacità di vecchia generazione max |
|
Generazione permanente di pool corrente |
Capacità di generazione corrente permanente |
|
Generazione permanente pool min |
Capacità di generazione permanente min |
|
Generazione permanente pool max |
Capacità di generazione permanente massima |
|
Soglia di tenuring di nuova generazione |
Soglia di tenuring |
|
Soglia di tenuring max nuova generazione |
Soglia di tenuring max |
|
Dimensione restante desiderata |
Dimensione restante desiderata |
|
Attività di compilatore |
Numero di attività di compilazione eseguite |
In caso di errore nell'avvio dell'appliance, è possibile che vengano registrarti i seguenti errori nel log di sistema:
|
Messaggio di errore |
Descrizione |
|
ERRORE: i log sono abilitati, ma il terminale di log non è connesso. |
il terminale di log non è connesso, ma logs_enabled o enable_access_log è impostato su yes. |
|
ERRORE: la proprietà content_on_fs è su 'off' ma il volume di contenuto locale manca. |
Il content_on_fs è impostato su off e specifica che il volume di dati deve essere montato localmente, ma TOMCAT non riesce a montare il volume di contenuto. La causa probabile è che il volume di contenuto non è formattato oppure non è definito nelle proprietà di TOMCAT. |
|
Errore: impossibile montare la condivisione di nfs |
TOMCAT non riesce a montare la condivisione di nfs. La causa probabile è che fs non sia connesso o che TOMCAT non è stato avviato prima di NAS (o un'altra appliance è connessa al terminale di fs) |
|
Messaggio |
Descrizione |
|
Lo spazio su disco disponibile per l'archiviazione dei dati è inferiore al 5% |
Lo spazio su disco disponibile per il volume di dati cui si accede dal terminale FS è inferiore al 5%. Si consiglia di aumentare la dimensione del volume. |
|
Lo spazio su disco disponibile per l'archiviazione dei dati è inferiore all'1% |
Lo spazio su disco disponibile per il volume di dati cui si accede dal terminale FS è inferiore all'1%. È richiesta attenzione immediata perché potrebbe verificarsi una perdita di dati. |
|
Lo spazio su disco disponibile per il volume del contenuto è inferiore al 5% |
Lo spazio su disco disponibile per il volume del contenuto sull'appliance è inferiore al 5%. Si consiglia di aumentare la dimensione del volume. |
|
Lo spazio su disco disponibile per il volume del contenuto è inferiore all'1% |
Lo spazio su disco disponibile per il volume del contenuto sull'appliance è inferiore all'1%. È richiesta attenzione immediata perché potrebbe verificarsi una perdita di dati. |
Le prestazioni di TOMCAT possono risultare ridotte quando viene attivata la registrazione (registrazione degli errori abilitata logs_enabled = yes oppure registrazione dell'accesso abilitata enable_access_log = yes. La tabella di seguito presenta i risultati di benchmark (specificati in unità di rps - richieste al secondo) quando i log sono disabilitati con l'utility di benchmark di Apache inclusa nel server Web Apache versione 2.0 e 2.2. Per maggiori informazioni, visitare il sito Web di Apache. Le seguenti impostazioni sono state utilizzate per il benchmarking: "bw=500M mem=2G cpu=2".
|
concomitanza |
rps |
|
concomitanza di 1 client |
2800-3200 rps |
|
concomitanza di 10 client |
7500-7900 rps |
|
concomitanza di 100 client |
7700-8100 rps |
Sito Web abilitato a Java semplice
TOMCAT serve le applicazioni dal volume di contenuto.
Appliance in uso:
|
Nome di proprietà |
Valore |
Note |
|
hostname |
www.mysite.org |
Nome host di sito. |
|
app_base |
MyApp |
|
|
content_on_fs |
off |
TOMCAT usare il contenuto del volume utente per tutto il contenuto. |
|
fuso orario |
EST |
Fuso orario di EST. |
|
tomcat_port |
80 |
Porta standard per il protocollo HTTP. |
Le richieste del client arrivano sul gateway IN. Il gateway inoltra le richieste al server TOMCAT, che serve la richiesta.
Applicazione a due livelli con database, log e monitoraggio
Appliance in uso:
Esempio di configurazione delle proprietà:
|
Nome di proprietà |
Valore |
Note |
|
hostname |
www.mysite.org |
Nome host di sito. |
|
app_base |
MyApp |
|
|
content_on_fs |
on |
TOMCAT usa l'archiviazione remota dal terminale di fs per tutto il contenuto |
|
fuso orario |
EST |
Fuso orario di EST |
|
tomcat_port |
80 |
Porta standard per il protocollo HTTP. |
|
max_connections |
200 |
Max di 200 utenti concorrenti |
|
logs_enabled |
sì |
Abilita i log di errore |
|
logs_base_dir |
MyApp_Log_Dir |
|
|
log_level |
INFO |
|
|
error_log_filename |
error_log |
Nome di log di errori |
|
enable_access_log |
sì |
Abilita il log di accesso |
|
access_log_filename |
myapp_access |
Nome di log di accesso |
La richiesta client arriva sul gateway IN. Il gateway inoltra le richieste al server TOMCAT, che serve la richiesta. Il contenuto e i log sono su appliance di archiviazione. I contatori sono riportati sull'appliance di MON.
Nota: Le applicazioni Java possono usare molti tipi di database. Dipende soltanto dalla presenza di un driver JDBC appropriato nell'applicazione. TOMCAT autorizza la connessione a qualsiasi appliance di database al suo terminale di db.
WEB5 come front-end per TOMCAT
Il diagramma di seguito mostra un uso tipico dell'appliance di TOMCAT come server di applicazione e WEB5 come front-end: WEB5 serve contenuto statico e ridirige tutte le richieste che richiedono l'elaborazione sul lato server al TOMCAT usando il protocollo di AJP.

Nota: È necessario abilitare il supporto di AJP (abilitare mod_proxy e mod_proxy_ajp) in WEB5 per questa modalità.
Appliance in uso:
Esempio di configurazione delle proprietà:
|
Nome di proprietà |
Valore |
Note |
|
content_on_fs |
off |
TOMCAT usa il contenuto del volume utente per tutto il contenuto. |
|
fuso orario |
EST |
Fuso orario di EST |
Altre impostazioni hanno i loro valori predefiniti.
WEB5 deve essere configurato per operare come front-end e comunicare con TOMCAT mediante protocollo di AJP.
mod_proxy e mod_proxy_ajp devono essere abilitati per includere le linee successive nella configurazione di apache
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
è necessario specificare alcuni percorsi di spazio url per servire TOMCAT, per esempio
ProxyPass /path-that-served-by-tomcat ajp://aux:8009/some-servlet ProxyPassReverse /path-that-served-by-tomcat ajp://aux:8009/some-servlet
Ad esempio:
|
percorso |
contenuto |
servito da |
|
/index.html |
documento HTML statico |
servito da WEB5 |
|
/images/* |
file grafici statici |
servito da WEB5 |
|
/scripts/*.php |
contenuto dinamico generato dagli script php |
servito da WEB5 |
|
/path-that-served-by-tomcat |
contenuto dinamico generato da jsp |
servito da TOMCAT |
La richiesta client arriva sul gateway IN. Il gateway inoltra le richieste al server Web di frontend, che serve le richieste per le pagine HTML statiche, i file grafici e gli script grafici. Le richieste per le pagine jsp o le pagine servlet sono inoltrate ad AppServer e servite da quel punto.
Sito Web abilitato a Java scalabile
Appliance in uso:
Esempio di configurazione di proprietà per AppServer1 e AppServer2:
|
Nome di proprietà |
Valore |
Note |
|
content_on_fs |
off |
TOMCAT usa il contenuto del volume utente per tutto il contenuto. |
|
fuso orario |
EST |
Fuso orario di EST |
Altre impostazioni hanno i loro valori predefiniti.
La richiesta client arriva sul gateway IN. Il gateway inoltra le richieste all'utilità di bilanciamento del carico Web, che indirizza la richiesta a uno dei server AppServer1 e AppServer2.
Software Open Source e di terze parti utilizzato all'interno dell'appliance
TOMCAT e TOMCAT64 usano i seguenti pacchetti Open Source di terze parti oltre ai pacchetti Open Source di terze parti usati dalla loro classe base LUX5 e LUX64.
TOMCAT
|
Software |
Versione |
Modificato |
License |
Note |
|
Apache Tomcat |
5.5.28 |
Sì |
Apache License v2.0 |
Home page |
|
JDK |
1.6.0.18 |
No |
Sun-BCL |
disponibile su sito Web di Sun |
|
samba-client |
3.0.28-0.el5.8 |
No |
GPLv2 |
N/D |
|
samba-common |
3.0.28-0.el5.8 |
No |
GPLv2 |
N/D |
TOMCAT64
|
Software |
Versione |
Modificato |
License |
Note |
|
Apache Tomcat |
5.5.28 |
Sì |
Apache License v2.0 |
Home page |
|
JDK |
1.6.0.18 |
No |
Sun-BCL |
disponibile su sito Web di Sun |
|
samba-client |
3.0.28-1.el5_2.1 |
No |
GPLv2 |
N/D |
|
samba-common |
3.0.28-1.el5_2.1 |
No |
GPLv2 |
N/D |
| Copyright © 2011 CA. Tutti i diritti riservati. | Contatta CA Technologies |