Mostrando entradas con la etiqueta Middleware. Mostrar todas las entradas
Mostrando entradas con la etiqueta Middleware. Mostrar todas las entradas

10 noviembre 2016

JRockit, Hotspot, solo puede quedar uno, ... como en los Inmortales

Un poco de historia

En 2008 BEA es comprada por Oracle, lo que causó algunas dudas en el equipo, pero aparentemente el equipo fue poco a poco ganando protagonismo y atención. Y probablemente en breve tanto lo que era la máquina virtual de Sun, HotSpot, como la de Oracle, jRockit se juntarán en una única solución mucho más potente.



Conocí a uno de los autores en un evento que organizó  BEA Systems España, y fue allí donde empecé a conocer esta Java Virtual Machine, JVM.

¿Qué es una JVM?

Una máquina virtual de Java (JVM) es un programa que traduce el código Java en el código de máquina para una plataforma de hardware específica. Las JVM son las que hacen de Java portable; una aplicación Java debe ser capaz de funcionar en cualquier JVM, aunque cada JVM está escrito específicamente para una sola plataforma.

Pero basta de de historias de la guerra del abuelo, veamos que ocurre en momentos mas actuales

Para la mayoría de los nuevos sistemas y / o desarrollo, Oracle recomienda usar JVM / JDK 7.  Java 7 release 7u55 incluye JavaFX y muchas nuevas correcciones de errores y parches de seguridad. Para la mayoría de los nuevos sistemas y / o desarrollo, Oracle recomienda usar JVM / JDK 7. A veces, se prefiere JVM / JDK 8. Java 7 release 7u55 incluye JavaFX y muchas nuevas correcciones de errores y parches de seguridad.

Las características importantes de Java 8 incluyen:
  • Lambda Expressions, una nueva característica de lenguaje, que le permite tratar la funcionalidad como un argumento de método o codificar como datos.
  • Las anotaciones de tipo permiten aplicar una anotación en cualquier lugar donde se utilice un tipo, no sólo en una declaración.     
  • Cliente TLS 1.2 habilitado por defecto.
  • Algoritmos más fuertes para cifrado de contraseñas.
  • Integración con Solaris 8 y mejoras de rendimiento relacionadas.

Debes de comprobar la matriz de compatibilidad de software aplicable para obtener recomendaciones actualizadas sobre la versión recomendada para su aplicación o implementación.

¿JRockit esta aún soportado?

JRockit y HotSpot se fusionan en una sola JVM, incorporando las mejores características de ambos. El resultado será aportado gradualmente a OpenJDK. JRockit se libera bajo Binary Code License Agreement  (BCL).

Aquí hay un enlace para ver la presentación oficial de Oracle de su nueva política, si estas mas interesado.

Oracle planea soportar el último lanzamiento de JRockit 6 - R28.2.7 hasta el 2017 JRockit Support. Las actualizaciones de esta versión estaban disponibles para el público durante el tiempo JDK 6 estaba disponible para el público. Tenga en cuenta las advertencias de texto en rojo en la página de descarga, ya que esta versión no está actualizada con los parches de seguridad. No se recomienda utilizar esta versión en producción ya que las nuevas versiones Java con parches de seguridad no están disponibles en Jrockit. Aún así, se podría usar la versión pública de JRockit 6 sin un cargo, siempre y cuando se cumplan los requisitos de BCL.

Las actualizaciones de Oracle a JRockit 6 hechas después de febrero de 2013 ahora sólo están disponibles para soporte a los clientes. Si un cliente ya tiene JRockit y quiere quedarse con JRockit, Oracle recomienda mantenerlo al día con las actualizaciones de $eguridad, que ahora requieren un contrato de $oporte.

Tenemos un cliente que usa Flight recorder y Mission Control con JRockit, se van a perder estas características con JRockit.

A pesar de que Java SE 7u40 fue lanzado en el otoño de 2013, todavía hay cierta confusión acerca de las características y funciones en las últimas versiones de Java.  
El Mission Control de java (JMC) y las características de Java Flight Recorder (JFR) de JDK/JRE SE 7u40 debería ser técnicamente equivalente a JRockit Java en este momento.


JConsole ha sido una herramienta popular a través de los años y proporciona un seguimiento básico de las aplicaciones. Para una mejor integración en la pila de Oracle, intenta utilizar Java Flight Recorder y Java Mission Control combinados con WebLogic Diagnostics Framework (WLDF)


(WLDF) es un marco de monitoreo y diagnóstico que define e implementa un conjunto de servicios que se ejecutan en los procesos de WebLogic Server y participan en el ciclo de vida del servidor estándar. Mediante WLDF, puede crear, recopilar, analizar, archivar y acceder a los datos de diagnóstico generados por un servidor en ejecución y las aplicaciones desplegadas dentro de sus contenedores. Estos datos proporcionan información sobre el rendimiento en tiempo de ejecución de los servidores y las aplicaciones y permiten aislar y diagnosticar fallas cuando se producen.

Si bien puede parecer que el recorte en las opciones de la Plataforma Java reduce las opciones y la flexibilidad, la convergencia resultará una planificación simplificada. Con Java Flight Recorder y Java Mission Control incluidos en la última versión de JVM 7, los diagnósticos, el monitoreo y el análisis de eventos se pueden realizar con una versión estándar de Java con relativa confianza en futuras versiones y actualizaciones de aplicaciones.



12 septiembre 2012

Oracle GoldenGate 11g R2 + Oracle Advanced Security Options



Dentro de los múltiples escenarios que podemos tener con Oracle Golden Gate tenemos la posibilidad de aunar la replicación con la seguridad de los datos en reposo. Esto es usar OGG con una de las  opciones de la edición Enterprise de Oracle 11g R2, la opción de seguridad avanzada (ASO), mas concretamente uno de sus pilares los tablespaces cifrados (Transparent Data Encryption; TDE)

Versiones mas antiguas.
Si bien es verdad que las bases de datos Oracle desde su versión 10g (10.2.0.5) hasta la versión 11g (11.2.0.2/3) tienen soporte integrado, simplemente para activarlo hay que ejecutar el siguiente scrip alojado en:

@$ORACLE_HOME/rdbms/admin/prvtclkm.plb
 


Recordar, eso si, que si tenemos una versión de Oracle Database Enterprise Edition  11.1.0.7 deberemos de ejecutar este script tras instalar el parche 9409423 (ADD TDE SUPPORT FOR USE WITH GOLDENGATE EXTRACT), una vez hecho esto ejecutar el mismo procedimiento para permitir que Oracle GoldenGate 11.1.1.1 para extraer datos cifrados de una base de datos Oracle.

Oracle GoldenGate 11g R2.
Si queremos que OGG11g R2 (11.2.x) trabaje con tablespaces cifrados (TDE) deberemos de subir nuestra versión de base de datos a Oracle 11.2.0.2 y además pasar el parche 10395645 (AUTO-LOGIN SUPPORT FOR DBMS_INTERNAL_CLKM FOR GOLDEN GATE) eso si solo para Linux-x86-64, Solaris (SPARC) y HP-UX Itanium, este parche se halla liberado desde la versión 10.2.0.5.0.

Crearemos el Oracle wallet (repositorio externo de claves de Oracle para trabajar con bases de datos y middleware) mediante el siguiente comando

  
mkstore -wrl ./ -createEntry ORACLE.SECURITY.CL.ENCRYPTION.ORACLEGG

Si estamos en una plataforma RAC hay que copiar el fichero ewalletp12 a los otros nodos (Si el cluster se esta ejecutando y la localización del wallet no está compartida) Así mismo hay que proporcionar el mismo fichero en las bases de datos stand by, si las hubiera.
Si quieres comprobar lo que has compartido, ejecuta el iguiente comando de  Oracle wallet
mkstore -wrl  /u01/app/oracle/wallet –viewEntry ORACLE.SECURITY.CL.ENCRYPTION.ORACLEGG


Crea el paquete dbms_internal_clkm:

@$ORACLE_HOME/rdbms/admin/prvtclkm.plb

Una vez creado le tenemos que dar a nuestro usuario de base dedatos de OGG permisos de ejecución sobre ese paquete, para ello abriremos una sesión SQL*PLUS e introduciremos la siguiente sentencia:


SQL> grant execute on dbms_internal_clkm to gguser;
Cifra la clave compartida
GGSCI> ENCRYPT PASSWORD “shared key”
Añade una entrada al fichero de parámetros del proceso EXTRACT, para descifrar la clave compartida:
DBOPTIONS DECRYPTPASSWORD “SHARED KEY”
Cierra y abre el wallet, si tienes el wallet habilitado con auto login (mediante el fichero cwallet.sso) deshabilítalo temporalmente para cerar y abrir el wallet.


11 septiembre 2012

Oracle GoldenGate 11g R2 nueva característica: Captura integrada



Al liberar Oracle su versión 11g R2 de GolgenGate (OGG), su equipo de desarrollo estaba bastante orgulloso de una de sus novedades: la captura integrada para plataformas Oracle. Esta captura integrada es única en el mercado. OGG soporta numerosas plataformas de bases de datos, con la adquisición de Oracle de este producto ha mejorado las prestaciones de OGG para la su plataforma. Esta nueva característica mueve las capacidades de captura de OGG al motor de base de datos.


Esta nueva característica de OGG no substituye a la captura tradicional que se explicó en anteriores artículos, si bien ambas están disponibles para el integrador, en plataformas de bases de datos Oracle..

La captura integrada esta basada en las nuevas características del log a nivel interno del motor de base de datos de Oracle, el conocimiento de estas características está solo disponible a nivel del fabricante, la propia Oracle Corporation.



¿Qué ventajas tiene la captura integrada?

Categoría
Descripción
Oracle Exadata database machine
Soporta capturas de Exadata Hybrid Columnar Compression (EHCC).
Compresión de datos
Soporta capturas de OLTP y compresión de segmentos.
Transacciones Distribuidas
  • XA-RAC 
  • PDML (DML paralelo)
Oracle RAC
Gestión del RAC simplificado
Nuevos tipos de datos
  • XML Object relational
  • XML binarios
Tipos de datos LOB
Lecturas parciales y completas de un LOB  (selective selects)
Procesamiento de de los REDO logs
Soporte lecturas multi hilo
Despliegue de la plataforma
Soporte a capturas Downstream y source
Comandos DDL
Captura tablas creadas con la especificación de password en columnas
Otras categorías
Soporte a Tablas OIT (index organizad tables) con la opción mapping

¿Que versiones de Oracle Database soporta la captura integrada?



Oracle GoldenGate 11g R2
Captura
tradicional
8i
Solo soportado en la versión 10.0 y en versiones mas antiguas de OGG
9i
Solo soportado en la versión 10.0 y en versiones mas antiguas de OGG
10.1
Solo soportado en la versión 10.0 y en versiones mas antiguas de OGG
10.2
Soportado
11.1.0.7
TDE/TSE (transparent Data encryption)
Soporte fetch para:
·          Secure files
·          ADT (abstract data type)
·          VARRAYS
·          Tablas anidadas (Nested Tables)
·          Tablas objeto (Object Tables)

11.2.0.2
TDE/TSE (transparent Data encryption)
Fetch support for SecureFiles, ADTs, VARRAYS, Nested Tables, Object Tables
11.2.0.3
TDE/TSE (transparent Data encryption)
Fetch support for SecureFiles, ADTs, VARRAYS, Nested Tables, Object Tables
Oracle GoldenGate 11g R2
Captura
integrada
8i
No soportado
9i
No soportado
10.1
No soportado
10.2*
Soportado
11.1.0.7*
Soporta TDE/TSE (transparent Data encryption)
11.2.0.2*
·          TDE/TSE (transparent Data encryption)
o         Para otras versiones de OGG, aplicar el patch  10395645 for Oracle 11.2.0.2.
·          XA-RAC
·          Compression
·          SecureFiles

Soporte fetch para:
·          ADT (abstract data type)
·          VARRAYS
·          Nested Tables
·          Object Tables

11.2.0.3
con el parche para el bug 13560925
·          TDE/TSE (transparent Data encryption)
o         Para otras versiones de OGG, aplicar el patch  13560925 for Oracle 11.2.0.3.
·          XA-RAC
·          Compression
·          SecureFiles
·          XML Object relational
·          XML binary

Soporte fetch para:
·          ADT (abstract data type)
·          VARRAYS
·          Nested Tables
·          Object Tables

* Solo soporta captura tipo downstream


El coste de licenciamiento de Oracle GoldenGate permanece inalterado según elijamos el tipo de captura, no tiene coste extra. Queda en manos de nosotros, los integradores, que opción elegir conforme las necesidades de nuestro proyecto.
 

17 agosto 2012

Oracle Golden Gate (Introducción)


Oracle Golden Gate (en adelante OGG) es un sistema de integración en tiempo real de datos, permite la sincronizacion de datos a través de entornos heterogéneos, con un impacto bajo en los sistemas indicados.
Las claves diferenciadoras de este sistema son :

·         Rendimiento: Es no intrusivo, bajo impacto, poca latencia (por debajo del segundo)
·         Extensible y flexible: Abierto, tiene una arquitectura modular, soporta orígenes y destinos heterogéneos, en nuestro caso puede trabajar con:
o        SQL Server, MySQL, IBM DB2 vs Oracle
o        Oracle vs Oracle (diferentes versiones)
·         Seguridad: Mantiene la integridad transaccional,  cifrada, resistente a fallos y errores.


La solución de la replicación de datos desde los esquemas de aeropuertos, en tiempo real a sus esquemas históricos, se llevará acabo mediante la instalación en cada máquina (Origen / destino) del software de OGG.

Oracle Golden Gate lee de los ficheros archivelog y redo log las operaciones transaccionales que se van ejecutando en la base de datos, este proceso se llama capture/extract (estos datos también pueden ser filtrados). Una vez que captura los datos, los escribe en un fichero (trail file) de formato universal para cualquier fuente de datos. Los encola a nivel de disco y los manda a la red mediante un proceso llamado pump. Solo transacciones a las que se han realizado un commit son encoladas y ademas en el mismo orden como se han consolidado en la base origen. Por lo que la integridad transaccional está asegurada aun cuando haya un fallo de red, dado que los cambios permanecerán en el fichero trail y se aplicarán en cuanto la conexión se reinicie.
Este proceso como otros de carácter administrativo está gobernado por un proceso general llamado Manager, este proceso lee de un fichero de parámetros el número de reintentos y la preriodicidad de estos, asi como otros parámetros de Oracle Golden Gate para su correcto funcionamiento.


Figura:  Proceso de extracción de datos de OGG


La transmisión de datos puede ser comprimida, por si las comunicaciones tienen un medio lento y cifradas para descartar ataques de snuffing de las líneas.

En el host de destino, existirá otro fichero (trail file) que irá recibiendo los datos, el proceso llamado delivery/replicat  aplica las transacciones en el mismo orden que se consolidaron en la base de datos de origen. El proceso de replica se puede basar en el API nativa de la base de datos, en ODBC, …


Figura: Proceso de replicación de datos de OGG



OGG puede capturar transacciones que modifican tanto datos DML, como transacciones que modfican la definicion de los datos (DDL).
Todos estros procesos pueden administrarse mediante al consola de OGG: invocando al comando: ggsci, esta ejecución abrirá una consola en la que podremos empezar a configurar los diferentes procesos de extracción, envío y replicación de la máquina.

26 mayo 2012

Oracle Policy Automation, Motor de reglas ontológico



Desarrollado por:
Ruleburst à Haley comprado por Oracle (2008)
Mas de 20 años de experiencia
Versión
Oracle Policy Automation 10.4.0 / Mayo 2012
Definición
Es una suite de productos de software para el modelado y la implementación de reglas de negocio dentro de las aplicaciones empresariales. Para transformar la legislación y documentos (Word, Excel y Visio) de normativas, en reglas de negocio ejecutables, en particular para el cálculo de los derechos a prestaciones y las cantidades de pago.
Plataformas:
Java y .NET
Modo de compra
·          Incluido en el ERP Siebel
·          Solución stand-alone
Mercado objetivo
·          Interacción del ciudadano con las AA.PP
·          Servicios Sociales
Componentes
·          Oracle Web Determinations: una aplicación web enfocada a las entrevistas.
·          Oracle Determinations Server:
o         Modela e integra procesos + reglas con servidores de BPEL (Oracle SOA suite), SAP, Siebel y Oracle EBS.
·          Oracle Determinations Engine: Soporta este middleware:
o         Microsoft IIS
o         Oracle Weblogic
o         IBM Websphere AS
o         Apache TOMCAT
Competidores
·          BeInformed Business Rule Engine
·          IBM ILOG: JRules y Rules for .NET v2.6
·          Pegasystems
·          Corticon Technologies
·          DROOLS (Open Source)
·          Experian