miércoles, 18 de febrero de 2015

1.4. Instalación y configuración de la plataforma Web en multiplataforma.


Instalación APACHE, MYSQL, PHP en CENTOS 7


Comando para instalar MySQL, hacemos instalar MariaDB como esto:







Finalizo proceso de instalación y se muestra la lista de los paquetes instalados, luego creamos los enlaces de inicio del sistema para MySQL (para que MySQL se inicia automáticamente cada vez que se inicia el sistema) e iniciar y habilitar el servidor MySQL.



Se establecerá la contraseña para la cuenta root de MySQL con el siguiente comando.
mysql_secure_installation







Aceptamos crear la nueva contraseña que se usara para el usuario principal(ROOT)
De forma predeterminada en una instalación MariaDB tiene un usuario anónimo, permitiendo que cualquier persona para iniciar sesión en MariaDB sin tener que tener una cuenta de usuario creada para
ellos. Esto es sólo para la prueba, y para hacer la instalación ir un poco más suave. Al final de la configuración nos da la opción de eliminarlos igual para ya solo tener al usuario ROOT y no correr riesgo que accedan sin permiso autorizado a nuestra base de datos.




Cent Os 7  con apache 2.4, apache2 está disponible como un paquete de Cent Os, por lo tanto podemos instalarlo con el siguiente comando.
Proceso de instalación y los paquetes que se están instalando.


Ahora se configura el sistema para habilitar e iniciar Apache en el arranque del sistema.


Luego de terminar la configuración de Apache comprobaremos que ya esta funcionando en nuestro equipo de computo, esto se hará con lo siguiente, abrimos nuestro buscador de preferencia y en vez de poner una dirección web se colocará nuestra dirección IP para verificarlo el correcto funcionamiento de apache.


INSTALACIÓN DE PHP5.

Instalaremos PHP5 y el módulo de Apache PHP5 de el siguiente codigo:
yum -y install php
Después que se instalado PHP5 y los módulos de apache PHP5, reiniciamos la aplicación de apache antes instalada.[1]
La raíz de los documentos del sitio web por default es / var / www / html. Ahora vamos a crear un archivo PHP pequeño (info.php) en ese directorio y llamarlo en un navegador. El archivo se mostrará un montón de detalles útiles sobre nuestra instalación de PHP, como la versión de PHP instalada.[2]

NOTA: La creación del archivo info.php en este caso se hizo desde la terminal usando el comando “vi” pero se pudo hacer usado otros comandos como el “gedit”, “nano”, etc.


Edición de archivo info.php desde la consola usando el comando antes mencionado(“vi”).


Después de haber creado el archivo info.php ahora lo llamaremos desde nuestro navegador tan solo introduciendo nuestra “dirección IP/nombre_del_archivo.php”, como por ejemplo

192.168.43.5/info.php

lunes, 16 de febrero de 2015

1.2. Arquitecturas de la tecnología Cliente – Servidor.

1.2.1 Aplicaciones de 2,3 y n capas

Aplicaciones de una Capa.

Las capas dentro de una arquitectura son nada más que un conjunto de servicios especializados que pueden ser accesibles por múltiples clientes y fácilmente reutilizables.

Este tipo de arquitectura se caracteriza por tener en una sola asociación lógica y en ella a la presentación, la lógica de negocios y los datos; que si los ponemos como servicios se convierten en capas, lo veremos más adelante.


Ejemplos de esta arquitectura son desarrollos realizados en Excel, Access, Fox, entre otros. 




Aplicaciones de dos capas.

Se caracterizan por tener 2 asociaciones lógicas, que prestan servicios y que a la final son capas. 




En la primera capa se incluye a la presentación (Interface grafica) y a la lógica de negocios, toda la lógica la escribimos en las formas (en el onClick del botón por ejemplo), y accedemos a un servicio de datos para la gestión de los mismos, por lo general a un servidor de Base de Datos.


Aplicaciones de 3 Capas.

Una aplicación de tres capas es una aplicación cuya funcionalidad puede ser segmentada en tres niveles lógicos (capas):
• Los servicios de presentación.
• Los servicios de negocios (Lógica de Negocios) .
• Los servicios de datos. 




La capa de servicios de presentación es responsable de:

• Obtener información del usuario.
• Enviar la información del usuario a los servicios de negocios para su procesamiento.
• Recibir los resultados del procesamiento de los servicios de negocios.
• Presentar estos resultados al usuario.

El nivel de servicios de negocios es responsable de:

• Recibir la entrada del nivel de presentación.
• Interactuar con los servicios de datos para ejecutar las operaciones de negocios para los que la aplicación fue diseñada a automatizar (por ejemplo, la preparación de impuestos por ingresos, el procesamiento de ordenes y así sucesivamente).
• Enviar el resultado procesado al nivel de presentación.

El nivel de servicios de datos es responsable de:

• Almacenar los datos.
• Recuperar los datos.
• Mantener los datos.
• La integridad de los datos.
 


Al ser la primera capa un servicio, se puede inferir que las aplicaciones no solo podrían ser de escritorio, si quisiéramos que nuestra aplicación tenga una interface web, pues solamente bastaría con cambiar la capa de presentación y de allí en adelante nada tiene porque cambiar.

Entonces nuestras páginas web estarían alojadas en un Servidor Web las mismas que se conectan a la lógica de negocios y de allí a los servicios de datos.




Arquitectura de 3 capas con interface Web . 


Aplicaciones de n Capas. 

Podríamos ir separando nuestra aplicación en mas niveles lógicos, por ejemplo, vamos a querer que nuestra aplicación tenga múltiples interfaces, es decir interface gráfica (standalone o desktop) y también interface Web. 

Lo aconsejado en esta circunstancia es separar al Servidor Web encargado de alojar las páginas Web en una capa más. En este caso se tendrían 4 capas. 

Mientras más servicios coloquemos a nuestra aplicación y mientras más escalable lo imaginemos, mas capas lógicas van a irse añadiendo a nuestra arquitectura; allí está el inicio del estudio de las siguientes secciones del curso, LOS PATRONES DE DISEÑO. 

• La arquitectura en 3 capas es la más usada 
• La arquitectura en 4 capas puede ser más escalable.

arquitectura cliente-servidor


Las aplicaciones cliente-servidor, permiten realizar diferentes tipos de tareas de manera remota, es decir, ofrecen la posibilidad de trabajar desde un terminal con comodidad y sin complicaciones.

Aplicaciones cliente-servidor.

Una aplicación cliente-servidor, es un programa que cuenta con un frontend que establece una conexión directa a través de una red, con un servidor que aloja el programa, servicio o desarrollo informático al cual deseamos acceder.

Una vez establecida la conexión, el mismo cliente (software que se ejecuta del lado del usuario), despliega una interfaz de trabajo que permite al usuario realizar la tarea de manera cómoda y eficiente.
Directamente desde el terminal y en tiempo real, envía toda la información suministrada por el usuario al servidor en donde se ejecuta la acción y el mismo servidor regresa el resultado a la maquina cliente, desde donde se ha ingresado los datos, mostrando por pantalla toda la información que ha sido procesada.

Utilidades de una aplicación cliente servidor.

Principales utilidades que se le puede asignar.

  •     Ligereza impresionante, ya que toda la carga y consumo de recursos se hace directamente en el servidor.
  •     Facilidad de mantenimiento, ya que se hace mantenimiento general en el código principal en el servidor.
  •    Posibilidad de realizar trabajos dinámicos y en grupo.
  •    Servicio de trabajo incluso en zonas remotas, gracias a  Internet.
  •  Posibilidad de ser desarrolladas en diversos lenguajes de programación.
  • Capacidad de trabajar, por lo general, en diferentes plataformas de manera simultánea.

Fuentes de información.
culturacion.com/cual-es-la-utilidad-de-las-aplicaiones-clienteservidor/
daw-fiec.pbworks.com/w/page/16963465/Arquitectura%20aplicacion%20Web
http://alog78503.blogspot.mx/2013/02/121-aplicaciones-de-23-y-n-capas_25.html

1.1. Evolución de las aplicaciones Web.

Web 1.0

Historia y creación.

Esta WEB fue creada alrededor de la década del 90 por Tim Berners -Lee y Robert cailliu. La web 1.0 se inicia con el surgimiento de internet y dura muy poco tiempo ya que comienzan a aparecer los Blog's.

La web 1.0 se caracteriza por ser un medio para informar.

El Webmaster es el encargado de coordinar o crear el diseño, la estructura y el contenido de la información que se va a colgar en internet. Es la forma más básica que existe, con navegadores de texto, es decir solo de lectura.

- El usuario no puede interactuar con el contenido de la página.
- los usuarios solo podían comunicarse con el Webmaster mediante enlaces o formularios web de correo electrónico.

En la web 1.0 se utilizaba HTML e imágenes de formato GIF en una resolución de 88 x 31, incluyendo marcos o framesets, lo que generaba mayor numero de visitas al sitio. Generalmente en la web 1.0 se tenían sitios desarrollados con fines comerciales, poco actualizados, cuyo objetivo era difundir información.

Otra característica de la web 1.0 es que el software utilizado requería de su instalación para su aplicación.

En modo de síntesis:

Tipo de Web: Estática.
Periodo: 1994 – 1997.
Tecnología asociada: HTML, GIF.
Característica principal: Las paginas web son documentos estáticos, solo de lectura y no permite a los usuarios interactuar.


Ventajas
Desventajas
Siendo las paginas de lectura únicamente, se podían encontrar información útil.
Las paginas eran estáticas, generalmente solo de texto y pocas imágenes.
La interacción de los usuarios no era posible con esta forma de diseño de paginas, por lo tanto no se podía intercambiar opiniones o novedades sobre temas de interés, no podían interactuar entre si.
Ya que la información no podía ser modificada por los usuarios, se evitaba la filtración de información incorrecta en la web.
La información estaba limitada por los contenidos publicados por el Webmaster.
La actuación de los usuarios era pasiva.

WEB 2.0

La Web 2.0 esta asociado a aplicaciones web que facilitan el compartir información, la interoperabilidad, el diseño centrado en el usuario y la colaboración en la World Wide Web. Un sitio Web 2.0 permite a los usuarios interactuar y colaborar entre si como creadores de contenido generado por usuarios en una comunidad virtual, a diferencia de sitios web donde los usuarios se limitan a la observación pasiva de los contenidos a que se ha creado para ellos. Algunos ejemplos de la Web 2.0 son comunidades web, servicios web, aplicaciones web, servicios de red social, servicios de alojamientos de videos, las wikis, blogs, mashups y folcsonimías.

El hecho de que la Web 2.0 es cualitativamente diferente de las tecnologías web anteriores ha sido cuestionado por el creador de la World Wide Web Tim berners-Lee, quien califico al termino como “Tan solo una jerga” precisamente porque tenia la intención de que la web incorporase estos valores en el primer lugar.


WEB 3.0

Termino que se utilizaba para describir la evolución del uso y la interacción en la red a través de diferentes caminos. Ello incluye, la transformación de la red en base de datos, un movimiento hacia hacer los contenidos accesibles por múltiples aplicaciones non-browser, el empuje de las tecnologías de inteligencia artificial, la web semántica, la web geoespacial, o la web 3D. El termino web 3.0 apareció por primera vez en 2006 en un articulo de jeffrey Zeldman, critico de la web 2.0 y asociado a tecnologías como AJAX.

La web 3.0 se basa en la idea de añadir meta-datos semánticos y odontológicos a la World Wide Web. El objetivo es mejorar internet ampliando la interoperabilidad entre los sistemas informáticos usando “agentes inteligentes”. Agentes inteligentes son programas en las computadoras que buscan información sin operadores humanos.

Con la web 3.0 se busca que los usuarios puedan conectarse desde cualquier lugar, cualquier dispositivo y a cualquier momento.

Innovaciones.

- Base de datos.
- Inteligencia artificial.
- Web semántica y SOA.
- Evolución al 3D.

Fuentes de información.
 


chagitei.tumblr.com/