Hay una serie de problemas comunes en el diseño de las aplicaciones distribuidas:
• La compatibilidad de los Tipos de Datos: Distintos sistemas operativos tienen diferentes tipos de datos que no son siempre compatibles entre sí.
• Fallas del Servidor: Debido a que los componentes pueden ser remotos, una falla de cualquiera de ellos puede hacer que toda la aplicación falle.
• Fallas del Cliente: El servidor debe saber cómo responder a las fallas del cliente.
• Reintento de llamadas: Si por ejemplo, se hace una llamada a un método en un servidor
para generar una orden de compra muy grande, y el servidor responde pero se pierde la respuesta por fallas de red, no es muy eficiente volver a enviar la orden de compra.
• Seguridad: En aplicaciones distribuidas los problemas de seguridad se multiplican. Por ejemplo, se debe considerar como: Autenticar a los usuarios Autorizarlos a acceder a los recursos, encriptar la información que viaja por la red, evitar ataques de denegación de servicio.
• Sincronización de la hora: Hay operaciones que dependen de la fecha y la hora. Por ejemplo, no es lógico en una aplicación procesar un envío de mercadería antes de haber recibido la orden de compra. Si el cliente y el servidor tienen fechas distintas, se debe generar un mecanismo de sincronización de hora para evitar este problema.
• La arquitectura basada en RPC Qué es RPC: RPC son llamadas a procedimientos o funciones en sistemas remotos, es decir en máquinas distintas a la máquina local. Transparencia de localización: El desarrollador utiliza los componentes sin necesidad de saber su ubicación física. Con RPC tanto en el cliente como en la máquina donde reside el componente hay subsistemas que se ocupan de la comunicación y el intercambio de datos.
Angeles
domingo, 13 de febrero de 2011
1.3 ESCENARIOS DE UTILIZACION APLICACIONES DISTRIBUIDAS
Algunas de las aplicaciones distribuidas más conocidas son remote login, correo electrónico, navegación web, streaming, telefonía ip y compartición de ficheros (p2p).
Algunos escenarios que utilizan aplicaciones distribuidas son:
EDUCACIÓN A DISTANCIA - MODDLE.
• moodle es un ambiente educativo virtual, sistema de gestión de cursos, dedistribución libre, que ayuda a los educadores a crear comunidades de aprendizaje en línea. este tipo de plataformas tecnológicas también se conoce como lms (learning management system).
• moodle fue creado por martin dougiamas, quien fue administrador de webct en launiversidad tecnológica de curtin. basó su diseño en las ideas del constructivismoen pedagogía que afirman que el conocimiento se construye en la mente del estudiante en lugar de ser transmitido sin cambios a partir de libros o enseñanzas y en el aprendizaje colaborativo. un profesor que opera desde este punto de vista crea un ambiente centrado en el estudiante que le ayuda a construir ese conocimiento con base en sus habilidades y conocimientos propios en lugar de simplemente publicar y transmitir la información que se considera que los estudiantes deben conocer.
• la primera versión de la herramienta apareció el 20 de agosto de 2002 y, a partir de allí han aparecido nuevas versiones de forma regular. hasta julio de 2008, la base de usuarios registrados incluye más 21 millones, distribuidos en 46.000 sitios en todo el mundo y está traducido a más de 75 idiomas
CREACIÓN DE BLOGS - WORDPRESS.
• wordpress es un sistema de gestión de contenido enfocado a la creación de blogs (sitios web periódicamente actualizados). desarrollado en php y mysql, bajo licencia gpl y código modificable, tiene como fundador a matt mullenweg. wordpress fue creado a partir del desaparecido b2/cafelog y se ha convertido junto a movable type en el cms más popular de la blogosfera. las causas de su enorme crecimiento son, entre otras, su licencia, su facilidad de uso y sus características como gestor de contenidos.
• otro motivo a considerar sobre su éxito y extensión, es la enorme comunidad de desarrolladores y diseñadores, que se encargan de desarrollarlo en general o crear plugins y temas para la comunidad, siendo usado en septiembre de 2009 por 202 millones de usuarios
CREADOR DE WIKIS - MEDIAWIKI.
mediawiki es un software para wikis libre programado en el lenguaje php. es el software usado por wikipedia y otros proyectos de la fundación wikimedia (wikcionario, wikilibros, etc). ha tenido una gran expansión desde el año 2005, existiendo un gran número de wikisbasados en este software que no mantienen relación con dicha fundación, aunque sí comparten la idea de la generación de contenidos de manera colaborativa. se encuentra bajo la licencia de software gnu general public license.
media wiki puede ser instalado en los servidores web apache e internet information servicesy puede usar como motor de base de datos mysql o postgresql.
también se llama mediawiki al espacio de nombres (ver más abajo) donde se hallan los mensajes de su interfaz listos para su traducción a la lengua local de cada wiki.
ADMINISTRAR BD EN WEB - PHPMYADMIN.
phpmyadmin es una herramienta escrita enphp con la intención de manejar la administración de mysql a través de páginas web, utilizando internet. actualmente puede crear y eliminar bases de datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia sql, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 62 idiomas. se encuentra disponible bajo la licencia gpl.
este proyecto se encuentra vigente desde el año1998, siendo el mejor evaluado en la comunidad de descargas de sourceforge.net como la descarga del mes de diciembre del 2002. como esta herramienta corre en máquinas con servidores webs y soporte de php y mysql, la tecnología utilizada ha ido variando durante su desarrollo.
1.2.5 DE CONEXION ENTRE CAPAS
Como tecnología, las arquitecturas de capas proporcionan una gran cantidad de beneficios para las empresas que necesitan soluciones flexibles y fiables para resolver complejos problemas inmersos en cambios constantes.
Todas las aplicaciones basadas en capas permitirán trabajar con clientes ligeros, tal como navegadores de internet, webtv, teléfonos inteligentes, pdas (personal digital assistants o asistentes personales digitales) y muchos otros dispositivos preparados para conectarse a internet.
De este modo, las arquitecturas de capas se están posicionando rápidamente como la piedra angular de los desarrollos de aplicaciones empresariales y las compañías están adoptando esta estrategia a una velocidad de vértigo como mecanismo de posicionamiento en la economía emergente que tiene su base en la red (lo que se ha venido a denominar "nueva economía").
Actualmente, la red (internet, intranets y extranets) es el ordenador o, como diría sun microsystems, el ordenador es la red. este paradigma está creando un cambio fundamental en los modelos de computación que, a su vez, proporciona desafíos y oportunidades como nunca antes había se habían producido.
Una tecnología de conexión de capas es:
• arquitectura dao.
Todas las aplicaciones basadas en capas permitirán trabajar con clientes ligeros, tal como navegadores de internet, webtv, teléfonos inteligentes, pdas (personal digital assistants o asistentes personales digitales) y muchos otros dispositivos preparados para conectarse a internet.
De este modo, las arquitecturas de capas se están posicionando rápidamente como la piedra angular de los desarrollos de aplicaciones empresariales y las compañías están adoptando esta estrategia a una velocidad de vértigo como mecanismo de posicionamiento en la economía emergente que tiene su base en la red (lo que se ha venido a denominar "nueva economía").
Actualmente, la red (internet, intranets y extranets) es el ordenador o, como diría sun microsystems, el ordenador es la red. este paradigma está creando un cambio fundamental en los modelos de computación que, a su vez, proporciona desafíos y oportunidades como nunca antes había se habían producido.
Una tecnología de conexión de capas es:
• arquitectura dao.
1.2.4 DE COMUNICACION DE DATOS
La construcción de aplicaciones distribuidas ha emergido como la arquitectura predominante para la construcción de aplicaciones multiplataforma en la mayor parte de las empresas.
Este cambio radical en los modelos de computación, desde los sistemas monolíticos basados en mainframe y los tradicionales sistemas cliente-servidor, hacia sistemas distribuidos multiplataforma altamente modularles, representa el desarrollo rápido y avance de la investigación en el mundo del desarrollo de aplicaciones, tal y como se pone de manifiesto en las últimas tendencias de las grandes empresas de tecnología, como sun con su estrategia sun one, o microsoft con dotnet (.net).
algunas tecnologías de comunicación de datos son:
• intranet.
• internet.
Ejemplo de una tecnología de comunicación de datos.
Este cambio radical en los modelos de computación, desde los sistemas monolíticos basados en mainframe y los tradicionales sistemas cliente-servidor, hacia sistemas distribuidos multiplataforma altamente modularles, representa el desarrollo rápido y avance de la investigación en el mundo del desarrollo de aplicaciones, tal y como se pone de manifiesto en las últimas tendencias de las grandes empresas de tecnología, como sun con su estrategia sun one, o microsoft con dotnet (.net).
algunas tecnologías de comunicación de datos son:
• intranet.
• internet.
Ejemplo de una tecnología de comunicación de datos.
1.2.3 DE BASE DE DATOS
la evolución de las bases de datos distribuidas se debe por una parte a razones organizacionales las cuales han demandado que mayores capacidades sean incorporadas a las bases de datos, tales como la integración de información desde distintos sitios donde se encuentre la empresa distribuida hacia algún sitio por ejemplo, para una consulta. por otra parte, el desarrollo de las tecnologías de comunicación han permitido enlazar datos con aplicaciones que se encuentran en sitios distintos y remotos, por ejemplo las transacciones bancarias realizadas en máquinas-cajeros automáticos (atm) que se encuentran ubicados en centros comerciales, empresas y escuelas, no serían posibles si no tuviéramos sistemas de comunicación para enlazarnos a bases de datos localizadas en diferentes sitios financieros.
Algunas tecnologías de base de datos son:
• oleb
• ado.
• xml.
• sql.
• herramientas para modelado (uml).
ejemplo de una tecnología de base de datos.
Algunas tecnologías de base de datos son:
• oleb
• ado.
• xml.
• sql.
• herramientas para modelado (uml).
ejemplo de una tecnología de base de datos.
1.2.2 DE APLICACIÓN
La adopción de un diseño distribuido de aplicaciones empresariales, aumenta la reusabilidad, reduce la cantidad de recursos, y los costes necesarios de desarrollo y mantenimiento.
Este nuevo enfoque de diseño pone en manos de los desarrolladores no solo la funcionalidad que demandan las aplicaciones, sino también la seguridad, rapidez y flexibilidad.
Algunas tecnologías de aplicación son:
• corba.
• dna.
• ejb.
• xml.
Ejemplo de una interfaz de aplicación.
Este nuevo enfoque de diseño pone en manos de los desarrolladores no solo la funcionalidad que demandan las aplicaciones, sino también la seguridad, rapidez y flexibilidad.
Algunas tecnologías de aplicación son:
• corba.
• dna.
• ejb.
• xml.
Ejemplo de una interfaz de aplicación.
1.2.1 DE INTERFAZ DE USUARIO
Aquí es donde su aplicación presenta información a los usuarios y acepta entradas o respuestas del usuario para usar por su programa. Idealmente, la iu no desarrolla ningún procesamiento de negocios o reglas de validación de negocios. Por el contrario, la iu debería relegar sobre la capa de negocios para manipular estos asuntos. Esto es importante, especialmente hoy en día, debido a que es muy común para una aplicación tener múltiples iu, o para sus clientes o usuarios, que le solicitan que elimine una iu y la remplace con otra.
Ejemplo de una interfaz de usuario.
Algunas tecnologías de interfaz de usuario son:
• api win 32.
• htmal.
• dell html.
• lenguajes de scrips
Ejemplo de una interfaz de usuario.
Algunas tecnologías de interfaz de usuario son:
• api win 32.
• htmal.
• dell html.
• lenguajes de scrips
Suscribirse a:
Entradas (Atom)