Resumen software 23-08-14

Page 1

RESUMEN SEMANAL – EQUIPO SOFTWARE Integrantes: Correa Agustín, Juan Nicolas. Mayorca Pérez, Yessenia. Felipe Tolentino, Walter Jesús.

ICE ¿Qué es ICE? ICE (Internet Comunication Engine) es un middleware orientado a objetos, es decir, ICE proporciona herramientas, APIs, y soporte de bibliotecas para construir aplicaciones clienteservidor orientadas a objetos. La filosofía de ICE es la construcción de una plataforma tan potente como CORBA, pero sin cometer todos los fallos de ésta y evitando una complejidad innecesaria. ICE es software libre y está liberado bajo la licencia GNU/GPL. ICE fue desarrollado por la empresa ZeroC que fue fundada en Florida en el año 2002. Ice está influenciado por Common Object Request Broker Architecture (CORBA) en su diseño, y fue creado bajo la influencia de programadores de CORBA como Michi Henning. Sin embargo, según ZeroC es más simple que CORBA.

Arquitectura ICE

2.- Aplicación Servidor: Aplicación Servidor que procesa dichas solicitudes. 3.- Slice: Lenguaje de especificación de ICE (la cual es muy semejante a la interface en RMI y al IDL en Corba). Las interfaces, operaciones y los tipos de datos que se intercambian entre el cliente y el servidor se definen utilizando el lenguaje de especificación de ICE (Slice). Slice le permite definir el contrato entre el cliente y el servidor de una manera que sea independiente de un lenguaje de programación específico, como por ejemplo C ++, Java o C #. Las definiciones de Slice son compilados por un compilador en una API para un lenguaje de programación específico, es decir, la parte de la API que es específica para los tipos de interfaces y que ha definido consta de código generado. 4.- Servant: Un servant ofrece una ayuda para (o encarna) uno o más objetos de ICE. En la práctica, un servant no es más que una instancia de una clase que está escrito por el desarrollador del servidor y que se ha registrado en el tiempo de ejecución del lado del servidor como el servant de uno o más objetos de ICE. Los métodos de la clase corresponden a las operaciones en la interfaz del objeto de ICE y proporcionan el comportamiento de las operaciones. 4.- Proxy Code: Es un identificador de ICE que denota un objeto ICE, es el intermediario entre la aplicación cliente y el Client ICE Core y las funciones que el cumple son: 1° Localiza el objeto ICE. 2° Activa la implementación del objeto dentro del servidor. 3° Trasmite parámetros del objeto. 4° Espera por la operación completa. 5° Retorna algún parámetro y retorna el valor hacia el cliente.

Elementos: 1.- Aplicación Cliente: La aplicación cliente que realiza una serie de solicitudes.

El Proxy Code se genera a partir de sus definiciones Slice y, por tanto, específica los tipos de objetos y datos que se ha definido en

¡GIOS siempre para apoyarte!, esperen nuestros próximos avances…


Slice. El Proxy Code tiene dos funciones principales: • Proporciona una interfaz de down-call para el cliente. Llamar a una función de la API de proxy generado en última instancia, termina el envío de un mensaje RPC al servidor que invoca una función correspondiente en el objeto de destino. •Proporciona código Unmarshaling.

Marshaling

servidor: sólo los servidores utilizan adaptadores de objetos. Un adaptador de objeto tiene varias funciones las cuales son: 

y

Marshaling es el proceso de serializar una estructura de datos compleja, tal como una secuencia o un diccionario, para la transmisión en el wire. El Marshaling convierte los datos en una forma que está estandarizado para la transmisión e independiente de las reglas endian-ness y de padding de la máquina local. Unmarshaling es el reverso del cálculo de referencias (Marshaling), es decir, deserializar datos que llega por la red y la reconstrucción de una representación local de los datos en los tipos que son apropiados para el lenguaje de programación en uso. 5.- ICE API: Es el conjunto de funciones y procedimientos que ofrece ICE para ser utilizado por otro software como una capa de abstracción. Y tiene soporte para los lenguajes: > C++ > Java > .NET > Python > PHP > Objetive-C > Ruby > ActionScript 6.- Skeleton: Proporciona una interfaz actualizada de llamadas que permite en tiempo de ejecución de ICE transferir el hilo de control al código de la aplicación que usted escribe. El Skeleton también contiene el cálculo de referencias y el código unmarshaling, por lo que el servidor puede recibir parámetros enviados por el cliente, y devolver parámetros y excepciones para el cliente. Es el proxy del lado del Servidor. 7.- Object Adapter: Es una parte de la API de ICE que es específica para el lado del

El adaptador de objeto asigna las peticiones entrantes de los clientes a los métodos específicos de objetos de programación del lenguaje. El adaptador de objeto está asociado con uno o varios parámetros de transporte. Si más de un criterio de valoración de transporte está asociado con un adaptador, los servants que encarnan los objetos dentro del adaptador se puede llegar a través de múltiples medios de transporte. Por ejemplo, puede asociar tanto a una red TCP / IP y un punto final UDP con un adaptador, para proporcionar una calidad de servicio y características de funcionamiento alternativo. El adaptador de objeto es responsable de la creación de proxies que se pueden transferir a los clientes. El adaptador de objeto sabe sobre el tipo, la identidad y detalles de transporte de cada uno de sus objetos e incrusta los datos correctos cuando el código de la aplicación en el servidor solicita la creación de un proxy.

8.- Client and Server ICE Core: El núcleo de ICE contiene el soporte de cliente y el servidor de tiempo de ejecución para el control remoto de comunicación. Gran parte de este código se refiere a los detalles de la creación de redes, hilos, orden de bytes, y muchas otras cuestiones relacionadas con la red que queremos mantener alejado de código de la aplicación. El núcleo de ICE proporciona un número de bibliotecas para el cliente y el servidor. 9.- Generate Code: La parte genérica del núcleo de ICE (es decir, la parte que es independiente de los tipos específicos que se hayan definido en Slice) se accede a través de la API de ICE. Se utiliza la API de ICE para ocuparse de las tareas administrativas, como la inicialización y finalización del tiempo de ejecución de hielo. La API de ICE es idéntico para los clientes y servidores (aunque servidores utilizan una mayor parte de la API de clientes).

¡GIOS siempre para apoyarte!, esperen nuestros próximos avances…


10.- Protocolo de ICE: ICE ofrece un protocolo RPC que puede utilizar TCP / IP o UDP como subyacente al transporte. Además, ICE también le permite utilizar SSL como transporte, por lo que se cifra toda la comunicación entre cliente y servidor.

Para desarrollar en Java: http://www.zeroc.com/download/Training/2.0/ IceTrainingJava-2.0.1.zip Espero les haya gustado la información. “Nunca consideres el estudio como

El protocolo de ICE define: • Una serie de tipos de mensajes, como mensajes de petición y respuesta. • Una máquina de estado de protocolo que determina en qué secuencia diferente de mensajes se intercambian tipos de cliente y servidor, junto con el establecimiento de la conexión y la semántica asociada desmontaje para TCP / IP. • Reglas de codificación que determinan cómo cada tipo de datos está representado en el hilo. • Un encabezado para cada tipo de mensaje que contiene detalles como el tipo de mensaje, el tamaño del mensaje, y la versión del protocolo y la codificación en uso.

una obligación, sino como una oportunidad para penetrar en el bello y maravilloso mundo del saber”

Instalación Si gustan usar ICE y empezar a crear sus aplicaciones distribuidas les brindamos un link de descargas: http://www.zeroc.com/download.html#win32_ msi Nota: Se puede descargar para los siguientes Sistemas Operativos:    

Windows. Linux. OS X. Solaris.

Documentación Si quieres practicar y saber más sobre dicha tecnología te brindamos contenido al respecto: Para desarrollar en C++: http://www.zeroc.com/download/Training/2.0/ IceTrainingCpp-2.0.1.zip

¡GIOS siempre para apoyarte!, esperen nuestros próximos avances…


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.