Your SlideShare is downloading. ×

PHP & IBM i

1,756
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,756
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
22
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. IBM i e PHP Andrea Bortolan IBM Power Systems andrea_bortolan@it.ibm.com 1 © 2008 IBM Corporation
  • 2. Lo sviluppo applicativo in IBM i 2 © 2008 IBM Corporation
  • 3. L’evoluzione dei modelli applicativi Character UI 5250 Data Tradizionale Intranet Presentation Business Access Intranet Logic Logic Logic Utente Emulazione 5250 Windows o Linux Client Graphical Data Server UI Win o Linux Intranet Intranet Business Access Logic Logic Presentation Logic Utente Windows o Linux Graphical Web UI Browser Web Web Business Data Access Intranet Presentation HTTP Server Intranet Logic Logic Logic Utente Web oo Internet Internet Business Data Access Logic Logic Programma Web Services Applicativo WSDL 3 © 2008 IBM Corporation
  • 4. PHP Il PHP è uno Scripting Language per sviluppare applicazioni Web – open source Vibrant Community – molto diffuso • 4.5+ milioni di sviluppatori PHP • 22+ milioni di domini Internet sviluppati Low Learning Curve in PHP – multipiattaforma (i5/OS, Linux, Unix, Windows) – curva di apprendimento veloce – potente – leggero per i sistemi – centinaia di applicazioni gia’ disponibili 4 © 2008 IBM Corporation
  • 5. PHP 2006: accordo strategico tra IBM e Zend per rendere disponibili prodotti e soluzioni Zend per il mondo i5/OS Zend Core for i5/OS – runtime i5/OS per applicazioni PHP – disponibile per V5R3, V5R4 e V6R1 – gratuito, 1 anno di supporto Silver incluso (supporto via Web, fix, aggiornamenti) Zend Studio for Eclipse i5 edition – Integrated Development Environment basato su Eclipse – disponibile per Windows Linux e Mac OS X – gratuito, 1 anno di supporto Silver incluso (supporto via Web, fix, aggiornamenti) 5 © 2008 IBM Corporation
  • 6. http://www.zend.com 6 © 2008 IBM Corporation
  • 7. Novita’ 2009 Zend Core e Zend Studio for i5/OS distribuiti gratuitamente con IBM i V5R4 e V6R1 – incluso 1 anno di supporto Silver (supporto via Web, fix, aggiornamenti) – GA 6 Febbraio 2009 7 © 2008 IBM Corporation
  • 8. i5 PHP API Toolkit Estende il PHP standard con una serie di API specifiche per l’integrazione con i5/OS – comandi i5/OS Vibrant Community – accesso a DB2 UDB for i5/OS – file di stampa – richiamo programmi nativi – user spaces – aree dati Low Learning Curve – job logs – code dati – ... – code messaggi Tutte le API sono identificate dal prefisso i5_ E’ realizzato come un’estensione del PHP abilitata durante l’installazione stessa di Zend Core for i5/OS 8 © 2008 IBM Corporation
  • 9. Zend Core for i5/OS Altra partizione Altro sistema i5/OS IFS PASE QSYS User 5722SS1 Opz.33 cc bb cc bb PHP <?php Request Module ...... ?> HTTP Server Porta 89 HTTP Server Database Response Porta 8000 Programma Reverse Proxy Zend Core for i5/OS nativo 1ZCORE5 Supporto di HTTPS incluso in Zend Core a partire dalla versione 2.5.1 9 © 2008 IBM Corporation
  • 10. I modelli e le infrastrutture applicative Zend Core for Web i5/OS Graphical Browser Web Graphical UI Business Data UI Access Modulo Logic Logic Utente Web PHP HTTP Server Intranet Intranet oo Internet Internet Zend Core for i5/OS Modulo Programma WSDL PHP Web Services Applicativo 10 © 2008 IBM Corporation
  • 11. I prodotti Zend per i5/OS e IBM i Zend Core for i5/OS – runtime applicativo PHP standard con estensioni specifiche (API i5_) per l’integrazione con i5/OS – gratuito, inclusi 3 anni di supporto di base Zend Studio for i5/OS e Zend Studio for Eclipse i5 Edition – ambiente di sviluppo, test e debug di applicazioni PHP – gratuito, inclusi 3 anni di supporto di base Zend Guard – protezione ed offuscamento del codice Zend Platform for i5/OS – prestazioni, scalabilita’ e affidabilita’ per ambienti PHP “mission critical” Zend 5250 Bridge (incluso in Zend Platform) – set di API per interfacciare da PHP programmi interattivi 5250 11 © 2008 IBM Corporation
  • 12. Zend Platform per i5/OS Consente di rendere un ambiente PHP “core business” piu’ robusto, ottimizzato ed efficiente – tuning delle applicazioni – segnalazione degli errori a runtime – compilazione degli script PHP e caching delle pagine – supporto del cluster Permette l’integrazione tra PHP e Java Prodotto a pagamento 12 © 2008 IBM Corporation
  • 13. Zend Platform: segnalazione degli errori “non sfugge niente”: tutte gli eventi e i dati dell'intera sessione di lavoro vengono memorizzati • Una “traccia” completa relativa all'applicazione è memorizzata automaticamente • Possibilita’ di replicare l'evento in errore 13 © 2008 IBM Corporation
  • 14. Zend Platform: integrazione con Zend Studio Accesso diretto al source PHP “interessato” dall’errore Attivazione del Debug per identificare e correggere il problema 14 © 2008 IBM Corporation
  • 15. Zend 5250 Bridge Set di API per interfacciare programmi interattivi 5250 da script PHP – reperimento ed impostazione (get and set) del contenuto e degli attributi di campi di videate 5250 – possibilita’ di pubblicare programmi 5250 come Web Services attraverso script PHP che li interfacciano e li incapsulano – incluso in Zend Platform DSPF 5250 Data Business Presentation Access Logic Logic Logic 15 © 2008 IBM Corporation
  • 16. i5/OS e MySQL MySQL e’ il database piu’ diffuso nel mondo Open Source con oltre 11 milioni di installazioni MySQL e’ il database più usato dalle applicazioni PHP Oggi: MySQL e’ supportato nell’Integrated File System di i5/OS – possibilità di eseguire in i5/OS applicazioni PHP basate su MySQL In un prossimo futuro: integrazione di MySQL con IBM DB2 Applicazioni Applicazioni for i5/OS PHP RPG – possibilità per applicazioni PHP basate su MySQL di archiviare i dati MySQL in IBM DB2 for i5/OS Dati memorizzati in – gia’ disponibile in Beta test DB2 for i http://www-03.ibm.com/systems/i/software/mysql 16 © 2008 IBM Corporation
  • 17. Dalle applicazioni i5/OS al Web DSPF 5250 Data Business Presentation Access DB2 for Logic Logic Logic I5/OS Reface – generare automaticamente una GUI a partire dai pannelli 5250 esistenti JSP Servlet DSPF – sovrapporre la nuova GUI 5250 Data /Portlet Business all’interfaccia utente 5250 Presentation Logic Access DB2 Logic Logic Restructure – separare la logica di business dalla logica di presentazione, quindi JSP • sviluppare una nuova GUI e una nuova logica di presentazione da cui richiamare la Servlet Data Business Access logica di business esistente, oppure /Portlet DB2 Logic Logic • pubblicare la logica di business esistente come Web Services Rewrite – sviluppare una nuova GUI, una nuova JSP Servlet Business Data logica di presentazione e una nuova /Portlet Access DB2 Logic Logic logica di business riutilizzando i dati 17 © 2008 IBM Corporation
  • 18. PHP e l’integrazione con i5/OS – Applicazioni Web Rich UI Modulo Data Business PHP Access Logic Logic Zend Core for i5/OS Restructure Rich UI Modulo PHP Zend Core for i5/OS Database Rewrite Rich UI Modulo 5250 Data Business Presentation Access PHP Logic Logic Logic Zend Core for i5/OS Reface 18 © 2008 IBM Corporation
  • 19. PHP e l’integrazione con i5/OS – Web Services WSDL Modulo Data Client del PHP Business Access Logic Logic Web Service Zend Core for i5/OS WSDL Modulo Client del PHP Web Service Database Zend Core for i5/OS WSDL Modulo 5250 Data Business Presentation Access Client del PHP Logic Logic Logic Web Service Zend Core for i5/OS 19 © 2008 IBM Corporation
  • 20. PHP e Java PHP e Java sono simili per – ambienti di sviluppo disponibili – esempi disponibili – integrazione spinta con i5/OS • IBM Java Toolbox • i5 PHP API Toolkit – portabilita’ 20 © 2008 IBM Corporation
  • 21. PHP e Java PHP e Java sono differenti per PHP Java Language syntax Procedural Many application types Subset of function Requires object-orientation and features compared to JSF and JSP Web applications only Programming No architecture. MVC is MVC is required suggested model and architecture Deployment Code is normally Code is compiled interpreted at runtime Code runs in an application Code runs in a PHP server server Copy/paste with no config Additional server configuration needed Easier RPG => PHP Easier PHP => Java Ease of use/skill Allow for quick prototyping Requires OO skills and deployment Future Focus on structured Focus on simplifying architecture and development framework for enterprise apps 21 © 2008 IBM Corporation