DBMS e Linguaggi di programmazione nell'era di Internet



Documenti analoghi
Il Web Server e il protocollo HTTP

Sistemi avanzati di gestione dei Sistemi Informativi

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Presentazione Data Base

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Indice. Indice Premessa e scopo del documento Ambiente operativo Architettura di sistema... 5

Corso di PHP. Prerequisiti. 1 - Introduzione

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Gestione di un magazzino: sviluppo di un applicazione web-database

Siti web centrati sui dati (Data-centric web applications)

Programmazione Server Side e Database in rete

Applicazioni web centrati sui dati (Data-centric web applications)

Le scelte tecnologiche di RUP System

L o. Walter Ambu japs: una soluzione agile (

PHP ), con l'introduzione di un middleware quale Zend Framework a

Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile. Obiettivi

Corso di Informatica

Protocolli e architetture per WIS

Progetto di Applicazioni Software

Agent, porte, connettività e reti L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?...

Lezione 9. Applicazioni tradizionali

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

Progetto Virtualizzazione

Introduzione a phpmyadmin

Sistema di Gestione dei Contenuti Multimediali

Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g

WorkFLow (Gestione del flusso pratiche)

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Sistemi avanzati di gestione dei Sistemi Informativi

MDaemon GroupWare Per offrire agli utenti le funzionalità di condivisione calendario, rubrica e gli altri oggetti di OutLook

Il software di gestione immobiliare più facile da usare. Modulo Web v5.2.

Al termine del lavoro ad uno dei componenti del gruppo verrà affidato l incarico di relazionare a nome di tutto il gruppo.

19. LA PROGRAMMAZIONE LATO SERVER

Progetto di Applicazioni Software

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

.EVERYWHERE LOGIN. entra nel futuro. partnership signed

Architettura di un sistema operativo

MetaMAG METAMAG 1 IL PRODOTTO

Corso di PHP. Prerequisiti. 1 - Introduzione

sito web sito Internet

Programmazione ad Oggetti. Java Parte I

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Installazione & Configurazione Php e MySQL su Mac Os X. Php

DW-SmartCluster (ver. 2.1) Architettura e funzionamento

Introduzione ad EasyPHP

Un architettura di servizi integrati di comunicazione su rete IP per una PMI

Architetture Web: un ripasso

3 Automazione Web-based con Saia S-Web

IngEstate. Sistema di telegestione

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013

Distributed Training Facility

REALIZZAZIONE DI UN LABORATORIO REMOTO PER ESPERIENZE DI ROBOTICA EDUCATIVA: LATO CLIENT

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

La sicurezza nel Web

Come funziona internet

29 Novembre 2012 Open Source: un opportunità per far evolvere l ICT nelle imprese

NAS 322 Connessione del NAS ad un VPN

SVILUPPO DEL BLOG Autori: Ilari Michele, Cimini Oscar, Zaleski Dawid

Il Software Open Source per la Statistica Ufficiale

Ministero dell istruzione, dell università e della ricerca. Liceo Tecnologico. Indirizzo Informatico, Grafico e Comunicazione

Corso App modulo Android. Antonio Gallo

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer

MODULO 02. Iniziamo a usare il computer

Differenza tra wordpress.com e CMS

Progettazione Web Applicazioni client-server

MDaemon GroupWare Per offrire agli utenti le funzionalità di condivisione calendario, rubrica e gli altri oggetti di MS Outlook

TYPO3 in azione con l infrastruttura ZEND: affidabilità e sicurezza. Mauro Lorenzutti CTO di Webformat srl mauro.lorenzutti@webformat.

C Cloud computing Cloud storage. Prof. Maurizio Naldi

Corso di Web programming Modulo T3 A2 - Web server

VPN RETI PRIVATE VIRTUALI: ACCESSO REMOTO

Sistemi di gestione delle basi di dati. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Strumenti e linguaggi per lo sviluppo WEB su Linux. Scano Alessandro alescano@fastimap.com

Managed Print Services

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1)

Hardware delle reti LAN

Maria Aliberti, Sophia Danesino, Aurora Martina, Clotilde Moro, Mario Scovazzi e altri presentano la loro esperienza di DOCENTI COLLABORATIVI

Gaia Corbetta Convegno 3E - ATI/ANIMP 11 luglio 2013, Milano

Proposte di Tesi di Laurea

Architetture Applicative

Finalità delle Reti di calcolatori. Le Reti Informatiche. Una definizione di Rete di calcolatori. Hardware e Software nelle Reti

la tua presenza e il tuo BUSINESS ON-LINE

Il CMS Moka. Giovanni Ciardi Regione Emilia Romagna

Port Community System del Porto di Ravenna CONFIGURAZIONE

Il sistema operativo TinyOS

Il Comune di Modena e l'open Source Mo.Ma 2013

Introduzione al sistema operativo Il file system: file, directory,...

Sme.UP Web Application

Registro elettronico scuola ospedaliera rel. 7.0

Transcript:

DBMS e Linguaggi di programmazione nell'era di Internet Crippa Francesco fcrippa@tiscalinet.it Crippa Francesco (GPL) 1

Programma del corso DBMS nati per il WEB: MySQL Postgres Il cuore del WWW, il web server: Apache Embedded scripting: PHP Piena portabilità: JAVA Crippa Francesco (GPL) 2

Materiale di riferimento Home page del corso: PHP: http://filibusta.crema.unimi.it/~franky/ http://www.php.net MySQL: http://www.mysql.org Postgres SQL: Java: http://www.postgres.org http://java.sun.com Crippa Francesco (GPL) 3

MySQL MySQL si può trovare in due differenti versioni: 3.x: considerata la più stabile. Molto apprezzata per le prestazioni ma estremamente limitata nelle caratteristiche tecniche. E' attualmente la versione più diffusa 4.x: la più recente. Molto performante e con una adeguata implementazione delle caratteristiche più comuni hai DBMS. Essendo estremamente recente è ancora poco utilizzata in via precauzionale. MySQL nasce come software proprietario e diventa OpenSource dopo pochissimo tempo. E' considerato uno dei DBMS più performanti sul mercato. Supporta SQL 92 con estensioni proprie Non è adatto ad architetture di storage distribuite. Crippa Francesco (GPL) 4

Postgres Attualmente è disponibile la versione 7.2 E' il primo RDMBS ad avere successo in ambito OpenSource E' considerato tra i più affidabili Non è orientato a massimizzare le prestazioni Supporta SQL 92, più alcune estensioni quali basi di dati attive A differenza di MySQL (ver. 3.x) è in grado di supportare molte più esigenze in ambito DB (es: integrità referenziale, sub-select, ecc...) Rilasciato sotto licenza GPL Crippa Francesco (GPL) 5

Apache E' il webserver più diffuso al mondo. Circa il 70% dei siti internet è mantenuto su apache. E' il webserver più esteso: permette di soddisfare tutte le esigenze che si creano in ambito web (hosting/hausing), tra cui: Virtual server (name/ip) Uso della crittografia (SSL) Possibilità di aggiungere più moduli al sistema per aumentarne le funzionalità Proteggere directory con richiesta di autenticazione E tante altre... Il file di configurazione è generalmente /etc/httpd/httpd.conf Crippa Francesco (GPL) 6

Apache (2) Di fatto, essendo un webserver, garantisce solo la trasmissione di streem di dati con un determinato protocollo (generalmente file di testo trasmessi con il protocollo HTTP) Il crescere di Internet ha reso inadeguata la trasmissione di testo senza interazione con l'utenza Sono così nate diverse tecniche per permettere dialogo con l'utente; in ordine cronologico: CGI (Server Side) Javascript (Client Side) PHP (Server Side embedded) Crippa Francesco (GPL) 7

PHP Nato come Pesonal Home Page è oggi diventato HyperText PreProcessor a causa del vasto ed improvviso sviluppo che il linguaggio ha subito. La versione 3 ha stabilito il punto di svolta. Oggi è disponibile la versione 4.1.x. Oggi il liguaggio permette di: Connettersi ai principali DBMS Usare costrutti tipici della programmazione strutturata (selezione, iterazione, sequenza) Usare il paradiga della programmazione ad oggetti La grande diffusione si deve anche allo sviluppo di numeroso software GPL che ha permesso di avere funzioni di libreria che coprono una vastità di argomenti (string, math, generazione di PDF, generazioni di immagini, ecc...) Crippa Francesco (GPL) 8

PHP (2) A dfferenza dei CGI il codice PHP si scrive direttamente all'interno della pagina che il webserver trasmetterà al client (linguaggio embedded) Non deve essere allocato in memoria un processo differente per ogni utente, garantendo così un notevole incremento prestazionale E' un sistema interpretato e quindi presenta tutti quegli aspetti positivi e nagativi tipici dei linguaggi interpretati (assenza di compilazione, minor ottimizzazione in fase di esecuzione, ecc...) Gli ultimi sviluppi del linguaggio lo rendono adatto anche per applicazioni diverse da quelle web-oriented Crippa Francesco (GPL) 9

Verso l'integrazione L'uso adeguato ed integrato di webserver, DBMS e scripting language permette di ottenere un Application Server, ovvero un insieme di software in grado di far girare un'applicazione su uno o più macchine in rete in manienra centralizzata. Poichè tutti i software trattati sono rilasciati sotto licenza GPL o derivante, ed esistendo versioni ottimizzate per Linux o BDS è possibile implementare applicazioni molto complesse senza avere costi di software fornito da terze parti. Questo ha garantito e garantisce tutt'oggi una crescita ed una diffusione non trascurabile delle application server. Crippa Francesco (GPL) 10

Aspetti architetturali User Browser TCP/IP Layer TCP/IP Layer Client Side Server Side WebServer PHP DBMS DB DB DB Crippa Francesco (GPL) 11