Un
servidor web o servidor HTTP es un programa informático que procesa una
aplicación del lado del servidor, realizando conexiones bidireccionales y/o
unidireccionales y síncronas o asíncronas con el cliente y generando o cediendo
una respuesta en cualquier lenguaje o Aplicación del lado del cliente. El
código recibido por el cliente suele ser compilado y ejecutado por un navegador
web. Para la transmisión de todos estos datos suele utilizarse algún protocolo.
Generalmente se usa el protocolo HTTP para estas comunicaciones, perteneciente
a la capa de aplicación del modelo OSI. El término también se emplea para
referirse al ordenador que ejecuta el programa.
• Microsoft
IIS: Sólo funciona sobre sistemas Windows, para utilizarlo en otro sistema
requiere máquina virtual.
• Sun Java
System Web Server: Este producto pertenece a la casa Sun, y suele emplearse
sobre entornos de este sistema. Sin embargo, como Apache, es multiplataforma, y
recientemente Sun ha decidido distribuirlos con licencias de código abierto.
• Ngnix:
Este es un servidor muy ligero y corre sobre todo en sistemas Unix y Windows.
Se ha convertido en el 4º servidor HTTP más popular de la red y también se
distribuye bajo licencia BSD.
• Lighttp:
Este servidor Web es otro de los más ligeros que hay en el mercado. Está
especialmente pensado para hacer cargas pesadas sin perder balance, utilizando
poca RAM y poca de CPU. Algunas páginas populares que lo usan son YouTube,
Wikipedia y otras que soportan gran tráfico diariamente. También es gratuito y se
distribuye bajo licencia BSD.
• Apache:
Este es el más común y más utilizado en todo el mundo. Además, es gratuito y de
código abierto, así que podríamos decir que corre sobre cualquier plataforma.
Lenguajes de programación web.
Lenguaje de Programación Web. Los lenguajes de programación
Web han ido surgiendo según las necesidades de las plataformas, intentando
facilitar el trabajo a los desarrolladores de aplicaciones. Se clasifican en
lenguajes del lado cliente y lenguajes del lado servidor.
Tipos de lenguajes de programación web más utilizados.
1.-Lenguaje HTML
Desde el surgimiento de internet se han publicado sitios web
gracias al lenguaje HTML. Es un lenguaje estático para el desarrollo de sitios
web (acrónimo en inglés de HyperText Markup Language, en español Lenguaje de
Marcas Hipertextuales). Desarrollado por el World Wide Web Consortium (W3C).
Los archivos pueden tener las extensiones (htm, html).
Ventajas:
• Sencillo
que permite describir hipertexto.
• Texto
presentado de forma estructurada y agradable.
• No
necesita de grandes conocimientos cuando se cuenta con un editor de páginas web
o WYSIWYG.
• Archivos
pequeños.
• Despliegue
rápido.
• Lenguaje
de fácil aprendizaje.
• Lo
admiten todos los exploradores.
Desventajas:
2.-Lenguaje estático.
• La
interpretación de cada navegador puede ser diferente.
• Guarda muchas
etiquetas que pueden convertirse en “basura” y dificultan la corrección.
• El diseño
es más lento.
• Las
etiquetas son muy limitadas.
3.-Lenguaje JavaScript
Este es un lenguaje interpretado, no requiere compilación.
Fue creado por Brendan Eich en la empresa Netscape Communications. Utilizado
principalmente en páginas web. Es similar a Java, aunque no es un lenguaje
orientado a objetos, el mismo no dispone de herencias. La mayoría de los
navegadores en sus últimas versiones interpretan código JavaScript.
El código Javascript puede ser integrado dentro de nuestras
páginas web. Para evitar incompatibilidades el World Wide Web Consortium (W3C)
diseño un estándar denominado DOM (en inglés Document Object Model, en su
traducción al español Modelo de Objetos del Documento).
Ventajas:
• Lenguaje
de scripting seguro y fiable.
• Los
script tienen capacidades limitadas, por razones de seguridad.
• El código
JavaScript se ejecuta en el cliente.
Desventajas:
• Código
visible por cualquier usuario.
• El código
debe descargarse completamente.
• Puede
poner en riesgo la seguridad del sitio, con el actual problema llamado XSS
(significa en inglés Cross Site Scripting renombrado a XSS por su similitud con
las hojas de estilo CSS).
4.-Lenguaje PHP.
Es un lenguaje de programación utilizado para la creación de
sitio web. PHP es un acrónimo recursivo que significa “PHP Hypertext
Pre-processor”, (inicialmente se llamó Personal Home Page). Surgió en 1995,
desarrollado por PHP Group.
PHP es un lenguaje de script interpretado en el lado del
servidor utilizado para la generación de páginas web dinámicas, embebidas en
páginas HTML y ejecutadas en el servidor. PHP no necesita ser compilado para
ejecutarse. Para su funcionamiento necesita tener instalado Apache o IIS con
las librerías de PHP. La mayor parte de su sintaxis ha sido tomada de C, Java y
Perl con algunas características específicas. Los archivos cuentan con la
extensión (php).
Ventajas:
• Muy fácil
de aprender.
• Se
caracteriza por ser un lenguaje muy rápido.
• Soporta
en cierta medida la orientación a objeto. Clases y herencia.
• Es un
lenguaje multiplataforma: Linux, Windows, entre otros.
• Capacidad
de conexión con la mayoría de los manejadores de base de datos: MysSQL,
PostgreSQL, Oracle, MS SQL Server, entre otras.
• Capacidad
de expandir su potencial utilizando módulos.
• Posee
documentación en su página oficial la cual incluye descripción y ejemplos de
cada una de sus funciones.
• Es libre,
por lo que se presenta como una alternativa de fácil acceso para todos.
• Incluye
gran cantidad de funciones.
• No
requiere definición de tipos de variables ni manejo detallado del bajo nivel.
Desventajas:
• Se
necesita instalar un servidor web.
• Todo el
trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más
ineficiente a medida que las solicitudes aumenten de número.
• La
legibilidad del código puede verse afectada al mezclar sentencias HTML y PHP.
• La
programación orientada a objetos es aún muy deficiente para aplicaciones
grandes.
• Dificulta
la modularización.
• Dificulta
la organización por capas de la aplicación.
5.-Lenguaje ASP.
Es una tecnología del lado de servidor desarrollada por
Microsoft para el desarrollo de sitio web dinámicos. ASP significa en inglés
(Active Server Pages), fue liberado por Microsoft en 1996. Las páginas web
desarrolladas bajo este lenguaje es necesario tener instalado Internet
Information Server (IIS).
ASP no necesita ser compilado para ejecutarse. Existen
varios lenguajes que se pueden utilizar para crear páginas ASP. El más
utilizado es VBScript, nativo de Microsoft. ASP se puede hacer también en Perl
and Jscript (no JavaScript). El código ASP puede ser insertado junto con el
código HTML. Los archivos cuentan con la extensión (asp).
Ventajas:
• Usa
Visual Basic Script, siendo fácil para los usuarios.
• Comunicación
óptima con SQL Server.
• Soporta
el lenguaje JScript (JavaScript de Microsoft).
Desventajas:
• Código
desorganizado.
• Se
necesita escribir mucho código para realizar funciones sencillas.
• Tecnología
propietaria.
• Hospedaje
de sitios web costosos.
6.-Lenguaje Pytho.
Es un lenguaje de programación creado en el año 1990 por
Guido van Rossum, es el sucesor del lenguaje de programación ABC. Python es
comparado habitualmente con Perl. Los usuarios lo consideran como un lenguaje
más limpio para programar. Permite la creación de todo tipo de programas
incluyendo los sitios web.
Su código no necesita ser compilado, por lo que se llama que
el código es interpretado. Es un lenguaje de programación multi paradigma, lo
cual fuerza a que los programadores adopten por un estilo de programación
particular:
• Programación
orientada a objetos.
• Programación
estructurada.
• Programación
funcional.
• Programación
orientada a aspectos.
Ventajas:
• Libre y
fuente abierta.
• Lenguaje
de propósito general.
• Gran
cantidad de funciones y librerías.
• Sencillo
y rápido de programar.
• Multiplataforma.
• Licencia
de código abierto (Opensource).
• Orientado
a Objetos.
• Portable.
Desventajas:
• Lentitud
por ser un lenguaje interpretado.
Definición de sistemas de gestor de base de datos.
Un sistema gestor de base de datos (SGBD) es un conjunto de
programas que permiten el almacenamiento, modificación y extracción de la
información en una base de datos, además de proporcionar herramientas para
añadir, borrar, modificar y analizar los datos. Los usuarios pueden acceder a
la información usando herramientas específicas de interrogación y de generación
de informes, o bien mediante aplicaciones al efecto.
Estos sistemas también proporcionan métodos para mantener la
integridad de los datos, para administrar el acceso de usuarios a los datos y
para recuperar la información si el sistema se corrompe. Permiten presentar la
información de la base de datos en variados formatos. La mayoría incluyen un
generador de informes. También pueden incluir un módulo gráfico que permita
presentar la información con gráficos y tablas.
Firebird: es un sistema de administración de base de datos
relacional (oRDBMS) (Lenguaje consultas: SQL) de código abierto, basado en la
versión 6 de Interbase, cuyo código fue liberado por Borland en 2000. Su código
fue reescrito de C a C++. El proyecto se desarrolla activamente, el18 de abril
de 2008 fue liberada la versión 2.1 y el 26 de diciembre de 2009fue liberada la
versión 2.5.0 RC1. La versión 2.5.6, la más reciente de la serie 2.5, fue
liberada el 04 de julio de 2016. El 19 de abril de 2016 fue liberada la versión
3.0
• Es
multiplataforma, y actualmente puede ejecutarse en los sistemas operativos:
Linux, HP-UX, FreeBSD, Mac OS,Solaris y Microsoft Windows.
• Ejecutable
pequeño, con requerimientos de hardware bajos.
• Arquitectura
Cliente/Servidor sobre protocolo TCP/IP y otros (embedded).
• Soporte
de transacciones ACID y claves foráneas.
• Es
medianamente escalable.
• Buena
seguridad basada en usuarios/roles.
• Diferentes
arquitecturas, entre ellas el Servidor Embebido1 (embedded server) que permite
ejecutar aplicaciones monousuario en ordenadores sin instalar el software
Firebird.
• Bases de
datos de sólo lectura, para aplicaciones que corran desde dispositivos sin
capacidad de escritura, como cd-roms.
• Existencia
de controladores ODBC, OLEDB, JDBC, PHP, Perl, .net, etc.
• Requisitos
de administración bajos, siendo considerada como una base de datos libre de
mantenimiento, al margen de la realización de copias de seguridad.
• Pleno
soporte del estándar SQL-92, tanto de sintaxis como de tipos de datos.
• Completo
lenguaje para la escritura de disparadores y procedimientos almacenados
denominado PSQL.
• Capacidad
de almacenar elementos BLOB (Binary Large OBjects).
• Soporte de User-Defined Functions
(UDFs).
• Versión
autoejecutable, sin instalación, excelente para la creación de catálogos en
CD-ROM y para crear versiones de evaluación de algunas aplicaciones.
PostgreSQL es un Sistema de gestión de bases de datos relacional
orientado a objetos y libre, publicado bajo la licencia PosgreSQL1 , similar a
la BSD o la MIT.
Como muchos otros proyectos de código abierto, el desarrollo
de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido
por una comunidad de desarrolladores que trabajan de forma desinteresada,
altruista, libre y/o apoyados por organizaciones comerciales. Dicha comunidad
es denominada el PGDG (PostgreSQL Global Development Group).
Oracle Corporation es una compañía de software que desarrolla
bases de datos (Oracle Database) y sistemas de gestión de bases de datos.
Cuenta además, con herramientas propias de desarrollo para realizar
aplicaciones, como Oracle Designer, Oracle JDeveloper y Oracle Developer Suite.
Visual FoxPro es un lenguaje de programación procedural,
orientado a objetos que posee un Sistema Gestor de Bases de datos o Database
Management System (DBMS) y Sistema administrador de bases de datos
relacionales, producido por Microsoft.
No hay comentarios:
Publicar un comentario