desarrollando con php en windows
TRANSCRIPT
|
Desarrollo con PHP en WindowsDesarrollo con PHP en Windows
Antonio Ognio CestiAntonio Ognio [email protected]@linux.org.pe
Desarrollo con PHP en WindowsDesarrollo con PHP en Windows
...desplegando en Linux...desplegando en Linux
Contenido de esta sesión
● Introducción a PHP● PHP como lenguaje y plataforma ● Soporte para PHP sobre Windows● Ambiente de desarrollo en Windows● Ambiente de pruebas en Linux (virtualización)● Ambiente de producción en Linux● Alternativas a Apache● Tendencias en el desarrollo con PHP
Introducción a PHPIntroducción a PHP
Introducción a PHP
● Lenguaje de scripting creado para la web● Iniciado en 1995 por Rasmus Lerdorf● Extremadamente popular en la web● Disponible en todas las plataformas● Código abierto (PHP License)● Muchas aplicaciones de libre disponibilidad● Muchos sitios web lo utilizan● Muy solicitado para desarrollos a medida
¿Quién está detrás de PHP?
Rasmus Lerdorf Zeev Suraski Andi Gutmans
Rasmus Lerdorf
Creador original
●Programador danés / islandés / canadiense● En 1994 crea scripts en Perl (PHP 1.0)● PHP = Personal Home Page● Scripts para mantener su página personal● En 1995 escribe un parser simple en C● Agrega un procesador de formularios● Lanza PHP/FI (PHP 2.0)● FI = Form Interpreter● Marca el estilo de lo que será luego PHP:● Sintaxis inspirada en Perl y C● Procesamiento de formularios web● Biblioteca de conexión a base de datos
● Fundador de “PHP Group”● Hasta hace poco empleado de Yahoo!● Consultor en tecnologías de PHP
Zeev Suraski Andi Gutmans+
● Desarrolladores de Israel (Technion ITT)● Rescribieron el parser del lenguage● Dieron origen a PHP 3● Crearon el motor Zend, el núcleo de lenguaje● PHP 4 utiliza el Zend Engine 1.0 (Mayo 2000)● PHP 5 utiliza el Zend Engine II (Julio 2004)● Siguen a cargo de PHP de cara a PHP 6● Con Zend lanzaron muchos productos PHP
Zend Technologies
● Zend Server● Zend Platform● Zend Studio● Zend Guard● Zend Framework● Zend Certification
Productos de Zend Technologies
PHP Group
● Equipo central de desarrolladores de PHP● Fundando por Rasmus Lerdorf y Zend● Formado por gente de múltiples empresas● Lideran el proyecto opensource● Dan forma al lenguaje y al producto● Publican oficialmente cada nueva versión● Definen las APIs● En C, para crear extensiones● Las propias funciones de PHP
● Administran el sitio web oficial● Publican las actualizaciones de seguridad● Responsables del futuro de PHP
http://www.php.net
AplicacionesAplicaciones
Sitios web famososSitios web famosos
Lenguaje y plataformaLenguaje y plataforma
PHP como lenguaje
● Sintaxis estilo C (similar a Java, C# o Javascript)● Todas los identificadores de variables empiezan con dolar $● Tipado dinámico y conversiones automáticas● Soporte para OOP estilo Java (más simple)● Namespaces y closures (recién en PHP 5.3)
PHP como plataforma
● Entorno de ejecución de scripts● Disponible para múltiples plataformas● Configurable a través de php.ini● Un script que corre sin problemas en un sitio● podría no hacerlo en otro, se debe ajustar la configuración según se requiera.
Directivas más comunes de php.ini
display_errors = On
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
memory_limit = 128M
upload_max_filesize = 128M
SMTP = localhost
smtp_port = 25
Arquitectura de PHP
Extensiones (en Windows)
extension=php_bz2.dll;extension=php_curl.dll;extension=php_dba.dll;extension=php_dblib.dllextension=php_mbstring.dllextension=php_exif.dllextension=php_fileinfo.dllextension=php_gd2.dllextension=php_gettext.dll;extension=php_gmp.dllextension=php_imap.dll
PHP sobre WindowsPHP sobre Windows
PHP en Windows
● PHP bajo Internet Information Server ● PHP bajo Apache● PHP bajo otros servidores
PHP sobre IIS
CGICGICGI
Ejecuta un proceso php.exe para cada solicitud.
Ventajas● Bastante estable
Desventajas● Lentitud debido a E/S y la creación de procesos
CGICGIISAPI
PHP cargado como unaextensión en el espaciode memoria de IIS.
Ventajas● Mejor rendimiento
Desventajas● Poco estable● Varias extensiones PECL no son thread-safe
FastCGI
Caching de procesosy pooling.
Ventajas● Mejor rendimiento que CGI● Más estable que ISAPI● Puede ejecutar extensiones PECL en un ambiente thread-safe
Zend y Microsoft colaboran
Al inicio
● Soporte inferior al de UNIX● Problemas de estabilidad y rendimiento
2006
● Zend y Microsoft anuncian colaboración
2007
● Optimización de binarios para Windows
2008
● IIS6 y 7 con soporte para PHP con FastCGI
Ambiente de desarrolloAmbiente de desarrollo
Ambiente de pruebasAmbiente de pruebas(pre-producción)(pre-producción)
Ambiente de producciónAmbiente de producción
Alternativas a ApacheAlternativas a Apache
PHP en Windows
● PHP bajo Internet Information Server ● PHP bajo Apache● PHP bajo otros servidores
TendenciasTendencias
ConclusionesConclusiones
Conclusiones
● Solución multiplataforma y muy popular● Lenguaje sencillo y completo● Fácil de configurar en Windows● Fácil de configurar en Linux● Pruebas en entornos de virtualización● Producción en entornos en la nube
GraciasGracias
¿Desea aprender más¿Desea aprender mássobre Linux?sobre Linux?
http://www.linux.org.pehttp://www.linux.org.pe
Busca un LUG cerca deBusca un LUG cerca deti en tu ciudadti en tu ciudad
|
Desarrollo con PHP en WindowsDesarrollo con PHP en Windows
Antonio Ognio CestiAntonio Ognio [email protected]@linux.org.pe