Análisis comparativo de las herramientas de
programación Web: PHP, ASP y JSP, bajo los
sistemas operativos Linux y Windows
Daladier Jabba Molinares *, Adalgisa Alcocer Olaciregui **,
Carmenza Rojas Morales ***
Resumen
La programación en la Web ha generado como consecuencia la creación de varias
herramientas de desarrollo, por lo que es importante identificar cuáles ofrecen un
mejor rendimiento y bajo qué Sistema Operativo. Las herramientas de programación
Web analizadas fueron: PHP, ASP y JSP, bajo los sistemas operativos Linux y Windows
utilizando criterios comunes.
Se llevó a cabo un estudio descriptivo - deductivo; se desarrolló un prototipo en
el que se muestra el funcionamiento de las herramientas mencionadas, con bases de
datos bajo Windows/Linux. Se diseñó y desarrolló una página Web prototipo, y se la
implementó en PHP, ASP y JSP. Para esto se instalaron los servidores Web ISS, PWS,
Apache, Tomcat e Instan ASP para realizar las pruebas, teniendo en cuenta las
siguientes variables: Tiempo de respuesta, complejidad de la programación, integri-
dad de la base de datos, arquitectura de software y hardware, detección de fallas,
confiabilidad y portabilidad.
Palabras claves: PHP, ASP y JSP, Windows 2000, Linux Red Hat, Prototipo,
Access, MysQL, Apache, Html.
Abstract
Web Programming has generated in consecuence the creation of several development
tools, therefore is important to identificate which offer good performance and under
Operative System. The Web programming tools analized were: PHP, ASP and JSP,
using the Operative System Linux and Windows with a common criterias.
It was a descriptive trial, developing a prototype for PHP, ASP and JSP, in Windows/
Linux. A web page was made with that tools. The web servers Web ISS, PWS, Apache,
Tomcat e One ASP were installed to see the next elements: Answer time, complexity,
4
0
0
2
e
d
e
r
b
m
e
i
v
o
n
e
d
9
2
:
n
ó
i
c
a
t
p
e
c
a
e
d
a
h
c
e
F
4
0
0
2
e
d
o
z
r
a
m
e
d
5
:
n
ó
i
c
p
e
c
e
r
e
d
a
h
c
e
F
* Ingeniero de Sistemas, Universidad del Norte; Magister en Ciencias Computacionales del
convenio ITESM-CUTB. Docente del Departamento de Sistemas, Universidad del Norte, Barranquilla
(Colombia).
[email protected]
** Ingeniero de Sistemas, Universidad del Norte, Barranquilla (Colombia).
[email protected]
*** Ingeniero de Sistemas, Universidad del Norte, Barranquilla (Colombia).
[email protected]
104
Ingeniería & Desarrollo. Universidad del Norte. 16: 104-115, 2004
data base integrity, software and hardware architecture, fails detection, trustworthy
and portability.
Key words: ASP, JSP, PHP, Windows 2000, Linux Red Hat, prototype, Access,
MysQL, Apache, Html.
1. FORMULACIÓN DEL PROBLEMA
Largo ha sido el camino evolutivo del manejo de la información en internet
para llegar a la utilización de sistemas de Bases de datos. La humanidad ha
sido testigo de la forma en que los websites pioneros han pasado a ser los
maravillosos sitios interactivos de hoy en día.
Este cambio se ha dado como respuesta a la aparición de nuevos proble-
mas. Ha sido necesario estructurar los contenidos informativos, bajo un
esquema cliente/servidor cada vez menos centralizado, promoviendo la
especialización de búsquedas de acuerdo a las diferentes categorías, todo esto
de una forma simplificada. Bajo este contexto, las bases de datos son parte del
eje central de los websites, y gran parte de su demanda radica en la producción
de contenidos, de tal manera que se puedan generar páginas HTML. Para
conseguir esto, existen formas variadas, dentro de las que se destaca la pro-
gramación de propósito general y herramientas de script.
Sobre el último punto existe la necesidad de saber elegir cuál herramienta
utilizar, ya que hay varias como Server PagesTM (ASP), JavaServer PagesTM
(JSP), Personal Home Pages (PHP), Cold Fusion, etc., y muchas veces esta
elección se torna difícil, debido a que cada una tiene sus ventajas y desventa-
jas, así como diversos usos. Por ejemplo, ASP provee el ambiente de desarrollo
más fácil, mientras que JSP requiere el conocimiento de Java y Servlets. PHP es
una tecnología popular basada en una fuente de desarrollo abierta. ASP se
acomoda mejor para sitios pequeños que tengan entre 100-500 consultas por
día, mientras que JSP es capaz de manejar entre 100 y un millón de consultas
por día.
Debido a lo anterior, se hace imprescindible comparar de una forma diná-
mica, a nivel cualitativo y cuantitativo, las herramientas de programación ASP,
JSP y PHP, ya que los documentos encontrados que comparan dichas herramien-
tas se limitan a describir elementos (como el costo, la escalabilidad, servidor
empleado, etc.) que si bien son importantes, pueden ser pocos para que el
potencial usuario haga su elección de acuerdo a sus necesidades.
Ingeniería & Desarrollo. Universidad del Norte. 16: 104-115, 2004
105
2. METODOLOGÍA
La investigación se desarrolló de la siguiente manera:
• Instalación de los sistemas operativos: Wndows 2000 y Linux Red Hat 7.
• Instalación de los servidores Web Apache, Apache Tomcat y Internet
Information Server en Windows 20000; en Linux: los anteriores, pero a
diferencia de IIS, se trabajará One Active Server Page.
• Instalación de JDK y PHP.
• Diseño de la base de datos.
- Creación del Modelo Entidad Relación
- Creación del Modelo Relacional
- Creación de tablas en la base de datos Access y My SQL
- Desarrollo de prototipo en ASP, JSP y PHP.
• Desarrollo de las pruebas, ejecutando los servidores, haciendo llamados a
través de Internet Browser, de las páginas de cada prototipo.
Las variables tipo cuya posible respuesta es un si o un no, se midieron por
observación directa. Para evaluar la portabilidad, se colocaron los códigos
fuentes en cada servidor y sistema operativo sin ningún cambio, así: migrar
de Linux [6] a Windows sin alterar el código y viceversa, y migrar de un
servidor Web hacia otro sin hacer modificaciones en el código. El tiempo de
respuesta se midió desde el inicio del código de cada herramienta hasta el fin,
tomando el tiempo al inicio y al final de cada ejecución, y de esta forma se
obtuvo la diferencia.
En cuanto a la complejidad, se tomaron como líneas de código todas
aquellas que representaban una instrucción, excepto las declaraciones y las
llaves de los ciclos repetitivos.
Por otro lado, para la Integridad de la base de datos se realizaron pruebas
de concurrencia, en las cuales se intentó modificar, eliminar o agregar un
registro simultáneamente a la base de datos, observándola antes y después de
esta operación para determinar si se mantuvo la integridad de los datos.
106
Ingeniería & Desarrollo. Universidad del Norte. 16: 104-115, 2004
3. PRESENTACIÓN Y ANÁLISIS DE LOS RESULTADOS
3.1. PORTABILIDAD EN LOS SISTEMAS OPERATIVOS
Las tres herramientas son portables de Windows a Linux y viceversa; esto
quiere decir que se puede migrar de un sistema operativo a otro sin realizar
cambios en el código. Sin embargo, es importante destacar que ASP [3] no fue
diseñado para trabajar en ambientes Linux, ya que es un producto exclusivo
de Microsoft. Debido a esto, la empresa SUN desarrolló una herramienta
llamada One Active Server Page, la cual interpreta el código ASP y permite el
funcionamiento de éste bajo Linux. Esto tiene algunas limitantes para los
usuarios Linux, ya que la herramienta no es de tipo Freeware, lo cual reduce
el uso de ASP sobre Linux y en caso de que el programador la utilice, si desea
migrar de un sistema operativo hacia otro, debe asegurarse de utilizar
componentes ADO para la conexión con las bases de datos.
Portabilidad en los servidores, según los sistemas operativos
Tabla 1
Herramienta
Apache
IIS
Tomcat
OneASP(Modulo)
Linux
Win
2000
Linux Win
2000
Linux Win
2000
Linux Win
2000
PHP
ASP
JSP
Fuente: Pruebas realizadas con PHP, ASP y JSP en Windows y Linux por el grupo investi-
gador.
Como se observa en la tabla anterior, en el servidor Apache, tanto PHP como
JSP (a partir de la versión 4) son portables de Windows 2000 hacia Linux Redhat
y viceversa. Se puede apreciar que ASP sólo puede ejecutarse en IIS en Windows
y en Linux sólo si se agrega un software intérprete como modulo de Apache,
en nuestro caso One Active Server Page. Por otro lado, JSP es portable en ambos
sistemas operativos bajo el servidor Tomcat. Es de destacar que PHP puede
ejecutarse en IIS.
3.2. CONFIABILIDAD
Al ejecutar los prototipos desarrollados con las tres herramientas, se pudo
observar que al seleccionar la opción Ver código fuente, disponible en el
navegador de internet, ninguna de las herramientas muestra el código del
Ingeniería & Desarrollo. Universidad del Norte. 16: 104-115, 2004
107
lado del cliente, lo cual es algo favorable desde el punto de vista de la seguridad.
A pesar de lo anterior, ASP está sujeto a la decisión, o al desconocimiento, de
parte del programador, para que el usuario vea o no el código, debido a que
esto depende de las etiquetas que se utilicen. Por ejemplo, la etiqueta <script></
script> permite que sea visible, en tanto que <%%> no.
3.3. ARQUITECTURA DE SOFTWARE Y HARDWARE
Tabla 2
Arquitectura de software y hardware
Herramientas
Características necesarias para
un funcionamiento adecuado
Sistema Operativo
Servidor
Memoria
Fuente: Pruebas realizadas con PHP, ASP y JSP en Windows y Linux por el grupo
investigador.
PHP
Linux
Apache
128 o más
ASP
Windows
IIS
128 o más
JSP
Linux
Tomcat
256 o más
A pesar que PHP y JSP ejecutan correctamente bajo Windows, su funciona-
miento adecuado se da en Linux, debido a que inicialmente fueron diseñados
para este último sistema operativo, y como era de esperarse, ASP tiene un mejor
desempeño en Windows, debido a que es una herramienta exclusiva Microsoft.
De igual forma sucede con el manejo de los s
Comentarios de: Análisis comparativo de las herramientas de programación Web: PHP, ASP y JSP, bajo los sistemas operativos Linux y Windows (0)
No hay comentarios