Fundamentos de la JVM y Arquitectura de Aplicaciones Java

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 2,84 KB

JVM: La Máquina Virtual de Java

La JVM (Java Virtual Machine) es el motor que interpreta su propio código (bytecodes) sobre casi cualquier hardware. Además, ofrece un entorno de ejecución concurrente que proporciona multiproceso (multithreading) a los programas y les provee acceso al sistema operativo mediante una API.

Aplicaciones Java

Una aplicación Java se ejecuta desde el sistema operativo, manteniendo la misma consistencia que un programa desarrollado en C o C++.

Applets y Seguridad

Applets

Los applets se envían desde el servidor al cliente, van asociados a páginas HTML, se cargan a través de internet y se visualizan en el navegador. Estos cuentan con restricciones de seguridad adicionales:

  • No pueden leer librerías ni métodos nativos.
  • No pueden leer, escribir o ejecutar ningún programa en la máquina que los ejecuta.
  • No pueden realizar conexiones a otros servidores.
  • No pueden acceder a todas las propiedades del sistema.
  • Las ventanas que lanzan son distintas de las que utilizan las aplicaciones Java estándar.

Niveles de Seguridad en Java

  • Nivel 1: Lenguaje y compilador.
  • Nivel 2: Verificador de bytecodes.
  • Nivel 3: Cargador de clases.
  • Nivel 4: Seguridad específica de la interfaz.

Tecnologías de Servidor

La extensión actual en el servidor se basa en incrustar piezas de código en el HTML que son ejecutadas por el servidor web, el cual devuelve el resultado final:

  • ASP: Portabilidad limitada, cautivo de Microsoft.
  • JSP: Estructurado, portable y eficiente; separa el contenido de la presentación y ofrece soporte para comunicaciones de servlet y JavaBeans.
  • PHP: Portable, extensible, seguro y con interfaz para múltiples sistemas.

Servlets: Procesamiento en el Servidor

Un servlet es un programa Java, similar a un applet, pero que corre en el servidor web o en un servidor de aplicaciones y maneja las peticiones de un cliente.

Ventajas de los Servlets

  • Rendimiento superior: Maneja hilos para cada solicitud.
  • Escalabilidad: Se ejecutan en el espacio de memoria del servidor web, eliminando la carga de procesos del sistema operativo.
  • Independencia: Son independientes de la plataforma al ser código Java y utilizar el gestor de seguridad de Java.
  • Persistencia: Pueden mantener conexiones con bases de datos.
  • Dinamismo: Pueden encadenar peticiones con otros servlets y generar páginas HTML dinámicamente.

Entradas relacionadas: