lunes, 25 de agosto de 2014

Funcionamiento de las aplicaciones web




Los primero que debemos saber es que las aplicaciones web se basan en una arquitectura cliente-servidor. Donde:
El servidor es el ordenador encargado de proporcionar el contenido. Para ello necesitamos instalar un servidor web en dicha máquina. Existen multitud de servidores web (Apache, LigHTTPd, IIS) pero no todos son capaces de ejecutar aplicaciones ASP.NET. Únicamente los servidores de Microsoft pueden desempeñar dicha tarea. En nuestro caso utilizaremos IIS Espress.
El cliente, que es el encargado de solicitar la información al servidor y mostrarla al usuario. Es el navegador (Interner Explorer, Firefox, Chrome, etc ). Si estas viendo está pagina estas utilizando un navegador web.


El funcionamiento de una aplicación es simple, el cliente emite una petición de un recurso que se encuentra en el servidor, y el servidor devuelve el recurso solicitado que es mostrado por el navegador.




La petición del recurso en concreto se realiza a través de una URL. Una URL no es mas que una cadena de texto, expresada en un formato determinado en la que indicamos el protocolo, el puerto, el servidor y el recurso que estamos solicitando. Por ejemplo:


http://www.devjoker.com:80/default.aspx

El modelo TCP/IP




El modelo TCP/IP es un modelo de descripción de protocolos de red desarrollado en los años 70 por Vinton Cerf y Robert E. Kahn. Fue implantado en la red ARPANET, la primera red de área amplia, desarrollada por encargo de DARPA, una agencia del Departamento de Defensa de los Estados Unidos, y predecesora de la actual redInternet. EL modelo TCP/IP se denomina a veces como Internet Model, Modelo DoD o Modelo DARPA.

El modelo TCP/IP, describe un conjunto de guías generales de diseño e implementación de protocolos de red específicos para permitir que un equipo pueda comunicarse en una red. TCP/IP provee conectividad de extremo a extremo especificando cómo los datos deberían ser formateados, direccionados, transmitidos, enrutados y recibidos por el destinatario. Existen protocolos para los diferentes tipos de servicios de comunicación entre equipos.


HTTP


HTTP (en español protocolo de transferencia de hipertexto) es el protocolo usado en cada transacción de la World Wide Web. HTTP fue desarrollado por el World Wide Web Consortium y la Internet Engineering Task Force, colaboración que culminó en 1999 con la publicación de una serie de RFC, el más importante de ellos es el RFC 2616 que especifica la versión 1.1. HTTP define la sintaxis y la semántica que utilizan los elementos de software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador web o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos (URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc.

arquitectura cliente-servidor




La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta idea también se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras.


En esta arquitectura la capacidad de proceso está repartida entre los clientes y los servidores, aunque son más importantes las ventajas de tipo organizativo debidas a la centralización de la gestión de la información y la separación de responsabilidades, lo que facilita y clarifica el diseño del sistema.


ASP




ASP son las siglas de Application Service Providers, empresas que proporcionan servicios de software a sus clientes a través de una red.


Esencialmente, los ASP son una manera de adquirir externamente algunos o casi todos los aspectos de la tecnología de información que necesitan las compañías. Pueden ser empresas comerciales que abastecen a clientes, o empresas sin ánimo de lucro u organizaciones gubernamentales que proporcionan servicio y ayuda a los usuarios finales.
Los ASP se pueden dividir en cinco subcategorías:
+ASPs empresariales: crean software de negocios de alto nivel.
+ASPs regionales o locales: proporcionan una amplia variedad de servicios para empresas más pequeñas en un área local.
+ASPs especializadas: proporcionan software para una necesidad específica, como servicios para sitios web o recursos humanos.
+ASPs de mercado vertical: proporcionan software a una industria específica, como salud.
+ASPs de volumen de negocios: proporcionan servicios de paquetes de software a negocios generales de pequeño y mediano tamaño.

jueves, 21 de agosto de 2014

Internet Information Services (IIS)




Es un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003.Windows XP Profesional incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS.


Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir que en las computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente.

Ventajas y desventajas




Aplicación Web

Ventajas
No requiere hacer actualizaciones en los clientes
No hay problemas de incompatibilidad entre versiones, porque todos trabajan con la misma
No necesita instalar nada en el cliente, agregar una nueva terminal solo requiere poner una computadora nueva


Desventajas
Requiere conexión a la red
Su tiempo de respuesta es más lento, esto ha mejorado usando tecnologías como AJAX haciéndolas casi tan rápidas como las de escritorio







Aplicaciones de escritorio

Ventajas:
Pueden ser más robustas
Tiempo de respuesta más rápido


Desventajas:
Requiere instalación en cada cliente
Se requiere actualizar en cada cliente