Cómo esquivé una migración de 5 años con 40 líneas de C y un truco de Unix daemon

Cómo esquivé una migración de 5 años con 40 líneas de C y un truco de Unix daemon
En Q2BSTUDIO resolvimos un reto clásico de la banca: un flujo de transferencias por lotes ejecutado por un JOB JCL escrito en COBOL que cada noche a las 02:00 lee un VSAM, invoca transacciones CICS y genera informes JES de cientos de páginas. Nueva demanda: exponer ese proceso como un endpoint REST para que un front-end fintech pueda activarlo on demand. Restricciones: cero tiempo de parada, cero cambios en JCL y cero presupuesto. Recursos: un desarrollador, mucha determinación y una MacBook.
En lugar de iniciar una reescritura de millones de líneas que habría tardado años y costado millones, construimos un puente mínimo que habla con el mainframe sin tocar el legado. La idea central fue crear un demonio Unix que actúe como DRIVER y, mediante una pequeña librería C tipo FFI, orqueste envíos de JCL al sistema de cola del mainframe. Resultado: nuevas APIs que integran con React y Go sin alterar los procesos productivos.
El truco del daemon explicado sin magia: un servicio que persiste más allá de la sesión SSH no es un hechizo, es simplemente un proceso que se desacopla de la terminal y queda supervisado por el sistema. En la práctica esto implica separar la vida del proceso de la del shell, redirigir entradas y salidas, escribir un PID y dejar que el proceso padre termine. Así el servicio sigue funcionando aunque cierres la laptop o se caiga la sesión.
En vez de reescribir COBOL, compilamos una pequeña biblioteca de unas 40 líneas en C que lanza el comando de envío de JOB al mainframe y captura la salida para devolverla al caller REST. Con esa pieza y bindings a Go, Python, JavaScript y Lua, montamos un pipeline de compilación que genera varias librerías que se registran en el mismo DRIVER daemon. Un solo proceso, varios lenguajes, cero configuración manual.
La demo fue sencilla y demoledora: arrastra un archivo JCL a la interfaz web, pulsa enviar y observa cómo aparecen las líneas de JES en tiempo real. El JOB de producción se ejecutó sin que tocáramos un solo PROC. Beneficios claros: la aplicación legacy sigue corriendo intacta, las nuevas características se despliegan en Go, React o el stack que prefieras y los rollbacks se gestionan matando el proceso experimental sin impacto en el mainframe.
En Q2BSTUDIO aplicamos este enfoque dentro de una oferta más amplia de servicios. Somos especialistas en aplicaciones a medida y software a medida y lo combinamos con capacidades en inteligencia artificial, ciberseguridad y servicios cloud. Si buscas modernizar plataformas críticas sin migraciones traumáticas podemos ayudarte con soluciones a medida como esta y otras integraciones. Consulta nuestras propuestas sobre desarrollo de aplicaciones y software a medida y sobre servicios cloud aws y azure para entender cómo integramos estos puentes en arquitecturas seguras y escalables.
Palabras clave que tenemos presentes en cada proyecto: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi. Combinamos automatización, monitoreo y controles de seguridad para que las integraciones con mainframes se comporten como funciones serverless seguras y observables.
Lecciones prácticas: si tu servicio muere cerrando la terminal no tienes un servicio sino un hijo del shell. Aprende a desacoplar procesos, redirigir salidas, escribir PID y supervisar. Con herramientas ligeras puedes exponer procesos legacy como APIs sin cambiar la lógica de negocio, reduciendo riesgo y coste.
En Q2BSTUDIO seguimos evolucionando libpolycall para soportar modos detach nativos y añadir trazabilidad, autenticación y métricas. Si quieres que tu mainframe parezca serverless o necesitas un partner que combine modernización, inteligencia artificial y ciberseguridad, hablemos. Entregamos soluciones reales que conectan lo antiguo con lo moderno sin interrupciones.
Comentarios