La Comunidad de desarrolladores de InterSystems es una comunidad de 24,436 desarrolladores increíbles
¡Somos un lugar donde los programadores de InterSystems IRIS aprenden y comparten, se mantienen actualizados, crecen juntos y se divierten!

¡Hola Comunidad!

¡Buenas noticias! Empieza un nuevo concurso de artículos técnicos en inglés:

✍️ Concurso de Artículos Ténicos en Inglés: Tutoriales de InterSystems IRIS ✍️

El objetivo del concurso es escribir un artículo que pueda ser considerado un Tutorial para los programadores de InterSystems IRIS de cualquier nivel: principiante / medio / senior.

🗓️ Duración: del 19 de febrero al 24 de marzo.

🎁 Premios para todos: Todas las personas que participen en el concurso recibirán un regalo.

1 0
0 167

¡Hola desarrolladores!

Solo quiero compartir una antigua pero muy relevante buena práctica en el cambio de namespaces que @Dmitry Maslennikov compartió conmigo.

Consideremos el método:

classmethod DoSomethingInSYS() as %Status

{

set sc=$$$OK

set ns=$namespace

zn "%SYS"

// try-catch in case there will be an error

try {

// do something, e.g. config change

}

catch {}

 zn ns    ; returning back to the namespace we came in the routine

return sc

}

1 0
0 167

Ahora que estamos en veranito vamos a adentrarnos en el apasionante mundo de las producciones Ensemble / Iris, donde los procesos son los protagonistas y los cuelgues de servidor se vuelven el tema de conversación en la máquina de café, que por supuesto acaban en llamadas desesperadas a soporte con servidores saturados de memoria y cpu. Esos servidores calentando aún más el ambiente sin sentido alguno. Aquí es donde entra el Pool Size y su magia cuando está bien configurado.

4 0
1 166
Artículo
· 16 feb, 2023 Lectura de 2 min
Rompe los límites del servidor

¡Hola, desarrolladores!

Sois expertos en IRIS y conocéis todos los trucos.
Las funcionalidades $ZF() y CPIPE no son nuevas para vosotros.
Así que también conocéis los límites de estas funcionalidades.
Ambos dan acceso a su entorno de servidor local. Y este es el final.

4 1
0 146

¡Hola Comunidad!

En esta publicación, os explicamos las distintas Insignias de Global Masters y qué hay que hacer para conseguirlas.

Información general sobre Niveles e Insignias de Global Masters

Todos los miembros de Global Masters empiezan en el 1er nivel ("Insider"), cuando se registran en el Programa de Fidelización. Para subir de nivel, hay que ganar un número de insignias del siguiente nivel. Las insignias se ganan realizando diferentes "retos".

¿Cómo puedes saber en qué nivel estás y las insignias que tienes? Sigue estos sencillos pasos:

0 0
0 166
Artículo
· 7 jul, 2022 Lectura de 17 min
Creando un Visualizador de Mensajes alternativo en IRIS

Si tuvieras la oportunidad de cambiar algo en el Visualizador de Mensajes de Interoperabilidad en IRIS, ¿qué harías?

Después de publicar el artículo Panel de Control "IRIS History Monitor", recibí algunos comentarios muy interesantes y varias peticiones. Una de ellas fue un Visualizador de Mensajes mejorado.
Si aún no lo has hecho, echa un vistazo al proyecto: merece la pena que le dediques un rato, y además ganó el 3er premio (Bronce) a Los mejores desarrolladores y aplicaciones de InterSystems Open Exchange en 2019.
Empecé a pensar algunas ideas sobre lo que me gustaría incluir en el "nuevo" Visualizador de Mensajes pero ¿cómo podría mostrar estos recursos de la forma más rápida y sencilla?

1 0
0 165

¡Hola desarrolladores!

Nos complace anunciaros que vamos a ofrecer una convocatoria gratuita para un examen de certificación de InterSystems a todas las personas inscritas en el Global Summit 2022. El precio habitual de estos exámenes es de 150$ por examen.

Los exámenes deberán realizarse durante una de las 7 sesiones vigiladas que habrá durante la Convención.

0 0
0 165

¡Hola desarrolladores!

Hoy os traemos un vídeo sobre Machine Learning, para entender sus conceptos básicos y cómo aporta valor en aplicaciones de todo tipo de industrias. El vídeo está disponible en el canal de YouTube de la Comunidad de Desarrolladores en inglés.

¿Qué es Machine Learning?

https://www.youtube.com/embed/LC07-3S3xyo
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

0 0
0 165

​El almacenamiento en columnas es una de las nuevas ofertas de InterSystems IRIS. A diferencia del almacenamiento tradicional basado en filas, optimiza el procesamiento de consultas al almacenar datos en columnas en lugar de filas, lo que permite un acceso y una recuperación más rápidos de información relevante.

Se han escrito un par de artículos sobre cuándo se debe utilizar para darle el mayor impulso a un sistema, y cómo crear tablas así usando SQL.

CREATE TABLE tabla (columna1 tipo1, columna2 tipo2, columna3 tipo3) WITH STORAGETYPE = COLUMNAR -- ex 1
CREATE TABLE tabla (columna1 tipo1, columna2 tipo2, columna3 tipo3 WITH STORAGETYPE = COLUMNAR) -- ex 2

e incluso las pruebas de rendimiento.

Como todos sabemos, InterSystems IRIS es un DBMS multimodelo y brinda acceso perfecto a los mismos datos mediante acceso relacional y de objetos. Lo primero se trata en otros artículos, pero ¿qué pasa con lo segundo?

4 0
0 164
InterSystems Official
· 27 mar, 2023 Lectura de 3 min
Mejoras en la generación e invocación de las clases de IRIS

Me gustaría adelantaros una mejora sobre cómo generamos e invocamos el código de los métodos en IRIS 2023.1.

Una clase en IRIS se compone de dos componentes de runtime principales:

  1. Descriptor de Clase (Class Descriptor) - Una lista de métodos muy optimizada, propiedades, parámetros de clase que configura y parametriza la clase, junto con atributos asociados con cada uno de estos, por ejemplo configuración pública/privada.
  2. Código de ObjectScript (ObjectScript code) - Un conjunto de rutinas que contienen el código de ObjectScript para ser ejecutado cuando se invoca un método.

1 1
0 144

En el vasto y variado mercado de las bases de datos SQL, InterSystems IRIS destaca como una plataforma que va mucho más allá de SQL, ofreciendo una experiencia multimodelo perfecta, y siendo compatible con un amplio conjunto de paradigmas de desarrollo. Especialmente el avanzado motor objeto-relacional ha ayudado a organizaciones a utilizar el enfoque de desarrollo más adecuado para cada una de sus cargas de trabajo intensivas en datos; por ejemplo, ingerir datos a través de Objetos y consultarlos simultáneamente mediante SQL. Las Clases Persistentes corresponden a tablas SQL, sus propiedades a columnas de la tabla y se accede fácilmente a la lógica de negocio utilizando Funciones Definidas por el Usuario o Procedimientos Almacenados. En este artículo, nos centraremos un poco en la magia que se encuentra justo debajo de la superficie y discutiremos cómo puede afectar vuestras prácticas de desarrollo e implementación. Esta es un área del producto que tenemos planificado evolucionar y mejorar, así que no dudéis en compartir vuestras opiniones y experiencias en los comentarios al artículo.

0 0
0 164

InterSystems API Manager (IAM) es una nueva función de InterSystems IRIS que permite monitorizar, controlar y dirigir el tráfico hacia y desde las APIs web dentro de su infraestructura de TI. Si te perdiste el anuncio de su lanzamiento, puedes leerlo aquí. También puedes consultar este otro artículo.

En esta publicación, utilizaremos InterSystems API Manager para balancear la carga de una API.

En nuestro caso, tenemos 2 instancias de InterSystems IRIS con /api/atelier API REST que queremos publicar para nuestros clientes.

Hay muchas razones diferentes por las que podríamos querer hacer eso, como:

  • Equilibrio de carga para distribuir la carga de trabajo entre los servidores
  • Implementación azul-verde: tenemos dos servidores, uno "prod", otro "dev" y es posible que queramos cambiar entre ellos
  • Implementación de Canary: podríamos publicar la nueva versión solo en un servidor y mover el 1% de los clientes allí
  • Configuración de alta disponibilidad
  • etc.
0 0
0 164

¡Hola desarrolladores!

La Comunidad de Desarrolladores quiere ayudaros tanto a encontrar trabajo como a encontrar las personas idóneas para que trabajen con vosotros. Por eso, hemos lanzado una nueva sección "Empleo" en la Comunidad.

La nueva sección está disponible en el menú principal, aquí:

¿Qué podéis encontrar en ella?

0 0
0 164

¡Hola Comunidad!

Os traemos un nuevo vídeo, disponible en el canal de YouTube de la Comunidad de Desarrolladores en inglés:

InterSystems IRIS y Node.js

https://www.youtube.com/embed/e3txoPRzK_Q
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

0 0
0 164

Muchas veces es necesario copiar o enviar archivos a su instancia de docker.

En mi caso fue con el IRIS JDBC driver.

Docker tiene este enfoque para esto (créditos a https://docs.docker.com/engine/reference/commandline/cp/):

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

Pero para copiar necesitas el nombre de tu docker. Escribe este comando para esto:

docker ps

En mi caso, my-iris es el nombre del docker.

0 0
1 164
Artículo
· 3 sep, 2019 Lectura de 4 min
Evaluación de Sharding #1

¡Hola Comunidad!

Con IRIS nos llegó una INTERESANTÍSIMA funcionalidad - ¡SHARDING! Sin duda una gran característica.

Pero, ¿cómo puedo descubrir si encaja con mis aplicaciones actuales? ¿Hay alguna funcionalidad práctica para apostar por ello en mi perfecta aplicación transaccional? ¿O es sólo algo para las nuevas aplicaciones que vaya a diseñar?

1 0
0 164

En nuestro artículo anterior presentábamos los conceptos generales así como la problemática que queríamos resolver mediante el uso del motor de tareas integrado en InterSystems IRIS, en el artículo de hoy veremos como configuramos una producción de interoperabilidad para proveer una solución.

Configuración del motor de Workflow

Primeramente vamos a definir los roles de las tareas que vamos a manejar, en nuestro ejemplo vamos a definir dos tipos:

2 0
0 163