Loading

| HT articoli

| Webhosting
TAGS:

webhosting, Java

Introduzione all'hosting Java

di Redazione

Luca Montemagno di Hosty.it, società italiana specializzata nell'hosting Java, ci parla delle potenzialità di Java per lo sviluppo web e delle caratteristiche fondamentali che un hosting Java deve garantire.

Java è noto per essere uno dei linguaggi di programmazione più potenti, la sua applicazione si estende così al web con strumenti e modalità ad oggi perfettamente collaudate, e utilizzate soprattutto per grandi progetti. L'Ing. Luca Montemagno, di Hosty.it, ci fornisce un'amplia introduzione all'hosting per Java, esponendone peculiarità e potenzialità, oltre ad una prima applicazione pratica grazie a Tomcat.

Questo articolo è stato offerto da:

Hosty.it Hosting Java

Hosty.it utilizza strumenti tecnologicamente avanzati e seri professionisti per la miglior gestione dei vostri siti web.

L'azienda è specializzata nei più importanti tipi di hosting. Assistenza eccezionale, ottimo prezzo e soluzioni preconfigurate rendono Hosty.it il partners ideale per tutti coloro che pensano al web come una grande opportunità di crescita e guadagno. L'azienda offre piani hosting Java, Ruby on Rails con la possibilità di aggiungere altri servizi, oltre ad una soluzione ecommerce e un piano rivenditori.

Introduzione

Ad oggi internet rappresenta uno strumento di comunicazione nonché di organizzazione aziendale di fondamentale importanza per le aziende che hanno tra le loro priorità quella di crescere esponenzialmente.

Le potenzialità di un'applicazione web sono pressoché illimitate.

L'organizzazione dei comuni processi aziendali, la necessità di distribuire o rendere accessibili informazioni a più sedi remote, la fidelizzazione dei propri clienti rappresentano tutt'ora possibilità che una moderna azienda deve sapere sfruttare per assicurare a se stessa una reale crescita.

In ambito business affidarsi a strumenti di vecchia generazione come ad esempio PHP o anche ASP potrebbe rappresentare una scelta poco sensata, magari semplicemente dettata da scarse conoscenze tecniche o da accidia nella scelta di soluzioni più complesse ma che nel tempo permettano una migliore gestione dei progetti avviati.

PHP ad esempio, pur a volte mettendo a disposizione framework per per certi versi possano aiutare nello sviluppo di applicazioni serie, a mio parere e per come di consueto è utilizzato, va per forza di cose a collocarsi comunque ad un livello tecnologico inferiore rispetto a quello attualmente occupato dalle soluzioni basate su JAVA in ambito business.

La potenza di framework come STRUTS, di librerie come Hibernate o JSF rendono vana ogni possibilità di confronto con i possibili concorrenti e consentono allo sviluppatore di utilizzare pattern di programmazione moderni e dotati di eccezionali pregi tra cui:

- Manutenibilità

- Riusabilità

- Rapidità di sviluppo

- Netta suddivisione dei layers inerenti l'applicazione ( vedi MVC )

Giusto per citare uno dei tanti pregi relativi ad una scelta basata su JAVA e TOMCAT, va da se che mentre tramite PHP o ASP si è orientati all'utilizzo di un pattern di tipo model 1, utilizzando TOMCAT come application server si ha a disposizione uno strumento orientato sia al modello 1 che al più professionale modello MVC.

Utilizzare un pattern MVC tramite ASP o PHP a mio parere risulta innaturale ritenendo evidente il fatto che quest'ultimi due linguaggi non risultano essere del tutto adatti a tale scopo.

I vantaggi insiti nello sviluppo di un'applicazione tramite il modello MVC sono innumerevoli e vanno ben oltre gli svantaggi, anzi quanto più il progetto da sviluppare è complesso tanto più l'utilizzo di un pattern di questo tipo è consigliabile.

Java hostingUno dei maggiori vantaggi offerti dal pattern MVC consiste nella sua Modularità e Riusabilità ovvero nel fatto che i diversi ruoli dell'applicazione sono assegnati a componenti diverse e che le librerie già precedentemente create possono essere riutilizzate in progetti anche diametralmente diversi.

Un pattern di questo tipo ci consente di ottenere un'applicazione costituita da livelli logici ben distinti, il che ci permette di modificare per esempio una pagina jsp senza influire sulla logica dell'applicazione. E' chiaro quindi che è possibile sviluppare in parallelo varie parti dell'applicazione ottimizzando il lavoro di più persone e riducendo notevolmente i tempi di sviluppo.

Tra gli application server adibiti allo sviluppo di applicazioni web basate su JAVA ed il modello MVC, Tomcat assume un posto di rilievo.

Apache Tomcat (o semplicemente Tomcat) è un web container open source sviluppato dalla Apache Software Foundation. Implementa le specifiche JSP e Servlet di Sun Microsystems, fornendo quindi una piattaforma per l'esecuzione di applicazioni Web sviluppate nel linguaggio Java. La sua distribuzione standard include anche le funzionalità di web server tradizionale, che corrispondono al prodotto Apache.

In passato, Tomcat era gestito nel contesto del progetto Jakarta, ed era pertanto identificato con il nome di Jakarta Tomcat; attualmente è oggetto di un progetto indipendente.

Tomcat è rilasciato sotto licenza Apache Software License, ed è scritto interamente in Java; può quindi essere eseguito su qualsiasi architettura su cui sia installata un JVM.

Le librerie in linguaggio JAVA al momento offerte ( e quindi utilizzabili in TOMCAT ) non hanno rivali e sono pressocchè innumerevoli. Provate solo a dare un occhiata a questo sito: http://java-source.net/ e ve ne renderete conto.

Ma in linea di massima, come è strutturato TOMCAT?

La struttura di una applicazione web J2EE prevede un ambiente di deployment standard comune a tutti i web container J2EE compliant. Ciò significa che effettuare l'installazione di una applicazione su Tomcat o su un altro web container non comporta modifiche all'applicazione stessa.

Prima di acquistare un Hosting JAVA basato su TOMCAT bisogna valutare attentamente che controllo quest'ultimo ci fornisce sulla nostra instanza.

La cartella che contiene le applicazioni sarà la /Webapps. Ogni applicazione avrà, all'interno della Webapps una cartella col nome dell'applicazione stessa (la root). Quindi se la nostra Web application si chiama APP, la sua directory root sarà /Webapps/APP

All'interno della root ci saranno tutti i file che compongono l'applicazione (file HTML, pagine Jsp, immagini, suoni ecc.) opportunamente distribuiti in cartelle per una più facile gestione.

Particolare importanza ricopre la cartella WEB-INF contenuta nella root. Qui avremo, dentro la cartella classes, i file .class delle classi Java che comprendono il motore del nostro sito Web (tra cui le Servlet) e, dentro la cartella lib, le opportune librerie in file di tipo Jar.

E' opportuno verificare che colui che ci offre hosting JAVA ci consenta l'utilizzo della cartella classes e che quindi ci permetta l'utilizzo delle proprie classi create ad hoc.

Fondamentale è inoltre la possibilità di utilizzare la cartella lib. Cartella in cui sarà possibile caricare librerie proprie o di terze parti.

Una volta scelto il database da utilizzare nella nostra applicazione possiamo configurare Tomcat in modo da permettere la connessione ad un determinato database definendo a piacimento un DATASOURCE comune per tutte le applicazioni oppure uno specifico inerente una singola applicazione.

Configurazioni di questo tipo o anche più complesse possono essere realizzate interagendo con file xml presenti nella cartella conf della propria instanza.

La possibilità di modificare tali file, se pur con ragionevoli limitazioni dovrebbe essere concessa.

L'articolo per forza di cose non può essere esaustivo di tutte le potenzialità offerte da questo potente application server, ma ritengo utile almeno segnalare che a differenza di JBOSS, TOMCAT per alcune sue configurazioni può necessitare di un riavvio.

Un buon hosting JAVA deve consentire la possibilità di riavviare la propria instanza in modo del tutto autonomo.

Quali sono i punti cardine su cui riflettere prima di acquistare un buon hosting JAVA?

Evidenziamone alcuni, dando per scontato quelli più comuni (come quelli semplicemente inerenti la banda e lo spazio web offerto):

- Possibilità di avere una propria instanza privata di Tomcat

Il crash di una singola applicazione ( realizzata eventualmente da altri ) non deve poter compromettere il funzionamente dell'intera instanza. Ciò può però accadere per hosting JAVA di tipo shared. E' quindi d'obbligo preferire sempre soluzioni di tipo PRIVATE in cui ciò è impossibile.

- Possibilità di non aver limitazioni sull'accesso alle cartelle della propria instanza

Molti provider bloccano l'accesso a molte cartelle inerenti la propria instanza e ciò limita notevolmente le possibilità offerte dal tipo di hosting trattato.

- Possibilità di utilizzare le proprie librerie, classi o framework realizzate interamente in JAVA

In una soluzione di tipo PRIVATE ciò è solitamente concesso. In una di tipo SHARED no.

- Possibilità di utilizzare librerie di terze parti ( come STRUTS, Hibernate, JSF ecc.. )

- Completo accesso al TOMCAT MANAGER

Il manager consente lo START/STOP delle proprie applicazioni ( servlet ).

Attenzione però: il manager non consente lo START/STOP della propria instanza. Quest'ultima funzionalità è necessario richiederla.

-

Completo controllo sullo START/STOP della propria instanza

Lo START/STOP della propria instanza deve poter essere eseguito in modo autonomo.

- Accesso al file catalina.out

Molti provider non consentono l'accesso a tale importante file di log. Ciò invece dovrebbe essere sempre concesso perchè è grazie a quest'ultimo che è possibile risalire ad eventuali errori di configurazione/programmazione relativi alle proprie applicazioni.

In un hosting di tipo SHARED l'accesso al file catalina.out è di solito inibito. In uno di tipo PRIVATE invece no.

- Possibilità di eseguire il deploy delle proprie applicazioni semplicemente copiando un file WAR sotto la propria webapps mediante FTP

- Possibilità di eseguire immediatamente un upgrade della memoria dedicata alla JVM in caso di necessità

- Possibilità di ottenere assistenza da addetti ai lavori mediante ticket.

Spesso l'assistenza inerente un piano di hosting viene prestata da tecnici. L'ideale sarebbe però che quest'ultima sia prestata da tecnici che siano anche sviluppatori.

Solo ciò può assicurare una maggiore possibilità di risoluzione di problematiche che a volte si rivelano spinose se confrontate con hosting di più basso livello tecnologico.

Troppe volte l'hosting JAVA viene offerto da aziende che a quest'ultimo pongono marcate limitazioni con l'effetto di inibire notevolmente il reale valore della scelta intrapresa.

Ing. Luca Montemagno

java-logo-thumb.png

Commenti

ERRORE: I commenti sono disabilitati.
Effettua il login per poter commentare.




Caricamento Login Form in corso, attendere prego...

Chiudi




Logout in corso, attendere prego...

Chiudi




Caricamento Login Form in corso, attendere prego...

Chiudi

Monday 21 January 2008