Linux/ L'OpenSource nelle soluzioni web

Il Linux Meeting 2000, appena conclusosi, è stato l'occasione per parlare dei meravigliosi strumenti che l'OpenSource fornisce per lo sviluppo di soluzioni basate sul web

Il tradizionale appuntamento del Linux Meeting (in breve, LiMe) si è dimostrato, ancora una volta, un importante momento di incontro e di dibattito sul sistema operativo Linux e sull'universo dell'OpenSource in generale. La dimostrazione di come il software aperto fornisca spesso soluzioni qualitativamente superiori a prodotti analoghi di tipo commerciale è uno dei nodi fondamentali da sciogliere per consentirne una maggiore diffusione in contesti produttivi.

Nell'ambito della manifestazione, chi vi scrive ha voluto proporre, in collaborazione con Seeweb, un esempio di architettura software per la realizzazione di soluzioni web-based, interamente basata su software OpenSource.

L'universo del software OpenSource, infatti, mette a disposizione degli sviluppatori tutti gli strumenti necessari per la realizzazione di soluzioni basate sul web, quali ad esempio siti Internet interfacciati con database, portali web, web application, commercio elettronico e così via.
Per comprendere il tipo di sistema che andremo a descrivere possiamo pensare ad un modello a strati. Alla base, lo strato più in basso, avremo il sistema operativo; su di esso poggerà lo strato delle applicazioni: il web server, innanzitutto, ma anche un server di database (DBMS), script e programmi CGI.

Per quanto riguarda il sistema operativo, la scelta non può che ricadere su Linux, che nel mercato dei server sta riscuotendo sempre maggiore successo. Infatti, se nel segmento desktop (quello destinato all'utenza domestica) è costretto a cedere il passo ai sistemi operativi Microsoft, che vantano una interfaccia più user-friendly, nell'uso server può far valere le proprie doti di maggiore stabilità, affidabilità, sicurezza e performance.

Il web server Apache, sviluppato dalla Apache Software Foundation, rappresenta assieme a Linux il progetto OpenSource più famoso e ne costituisce, ai nostri scopi, il complemento ideale. Il successo di Apache, del resto è un dato obiettivo: secondo la rilevazione condotta da SecuritySpace, nel mese di settembre 2000 la fetta di mercato detenuta da Apache sfiorava il 58%, contro il 28% di Microsoft IIS, unico autentico rivale.

Arriviamo così alla scelta del DBMS (Data Base Management System), per cui è sempre esistita, in seno alla comunità OpenSource, una forte rivalità tra MySQL e PostgreSQL. Quale dei due è il migliore? Non è facile dare una risposta, soprattutto perché spesso i difetti dell'uno sono i pregi dell'altro; di conseguenza, sono le esigenze specifiche dello sviluppatore ad orientare la scelta, senza che si possa definitivamente attribuire la palma del migliore ad uno dei due.

Un altro aspetto essenziale di un'applicazione web è costituito dagli strumenti utilizzati per l'implementazione della logica dell'applicazione stessa. Tra questi meritano senz'altro di essere segnalati i linguaggi PHP e Perl. Il primo, PHP, è un linguaggio di scripting server-side, semplice e performante, particolarmente adatto per la realizzazione di siti web interfacciati con dei database. Perl, d'altra parte, è un linguaggio storico del mondo OpenSource che vanta una vastissima comunità di sviluppatori e viene ampiamente utilizzato per applicazioni CGI, in particolare quando il tipo di compiti da svolgere richiede la capacità di gestire, in modo
flessibile ed efficiente, grandi quantità di testo.

In conclusione, si è mostrato come il software libero consenta di soddisfare tutte le esigenze connesse allo sviluppo di soluzioni in ambito web; molto spesso, gli strumenti OpenSource rappresentano un'alternativa ad equivalenti prodotti software commerciali, che spesso superano in prestazioni ed affidabilità.

Luca Balzerani