Todos los trabajos
Productos Oronts2025Ongoing

PimTx

Ediciones seguras y trazables para Pimcore 11 y 12 cuando muchas personas y procesos automáticos cambian los mismos datos a la vez. Bloqueos cooperativos, guardas de versión, propiedad de campos, idempotencia y un registro de auditoría completo para instalaciones con múltiples escritores.

Cliente: Oronts GmbH

De un vistazo

5
Estrategias de resolución de conflictos
30
Eventos de ciclo de vida gobernados
35
Comandos CLI de operaciones
0
Sobrescrituras silenciosas con las guardas de versión activas

El desafío

En un catálogo grande de Pimcore, muchas personas y procesos automáticos guardan cambios en los mismos productos al mismo tiempo. Sin protección, uno sobrescribe en silencio el trabajo de otro, un solo guardado puede desencadenar una reacción en cadena que inunda el sistema con historial de versiones y paraliza las colas, y nadie puede saber quién cambió qué. Cada proyecto acaba reconstruyendo a mano las mismas salvaguardas frágiles.

Nuestro enfoque

PimTx se convierte en un punto de paso obligatorio. Se sustituye la llamada de guardado estándar por una transacción gobernada, y cada escritura fluye por un único pipeline: comprobación previa (política, límites de seguridad, idempotencia), gobernanza (propiedad de campos, cortafuegos de campos, compuertas de aprobación), un bloqueo cooperativo (Redis como principal, base de datos como respaldo, protegido por token), mutación (detección de guardados sin cambios y una comprobación optimista de versión), persistencia (guardas de versión y de eventos acotadas) y auditoría (registro de operaciones, diferencias por campo, outbox, métricas, linaje). La resolución de conflictos, la detección de diferencias, los backends de bloqueo y los notificadores son todos conectables.

Arquitectura del sistema

Cargando diagrama...

Arquitectura del sistema: Write call: governed transaction, Preflight: policy, safety, idempotency, Governance: ownership, field firewall, approval, Cooperative lock: Redis or DB, token-guarded, Mutation: no-op check, optimistic version check, Concurrent write, Conflict strategy: retry, skip, merge, Clean, Persist: scoped version and event guards, Audit: operation log, field diffs, outbox, lineage

Decisiones de ingeniería

Un punto de paso obligatorio, no parches al núcleo

En lugar de sobrescribir los internos de Pimcore, PimTx envuelve la llamada de guardado, de modo que cada escritura, desde la interfaz de administración, los workers, las API y el código a medida, pasa por un único pipeline gobernado. La plataforma sigue siendo segura ante actualizaciones y la gobernanza vive en un solo lugar.

Concurrencia optimista, sin bloquear lecturas

Las lecturas nunca se bloquean. Las escrituras toman un bloqueo cooperativo breve y verifican la versión del elemento antes de persistir, de modo que los escritores concurrentes compiten de forma justa y una escritura obsoleta se rechaza en lugar de machacar datos recientes.

Detección de guardados sin cambios para acabar con la explosión de versiones

Un guardado que no cambia nada se omite mediante igualdad de campos y un hash de contenido. Esa única decisión detiene las cascadas de listeners que de otro modo llenan la tabla de versiones y tumban las colas.

Una superficie de 30 eventos para controlar sin sobrescribir el núcleo

Cada fase del pipeline emite un evento tipado, de modo que los equipos pueden observar o vetar una escritura sin bifurcar servicios ni parchear el núcleo.

Tecnologías

Backend
PHPSymfonyPimcore
Infraestructura
MySQLRedis
Frontend
ReactExtJS

Resultados clave

  • Los escritores concurrentes se resuelven de forma justa en lugar de sobrescribirse entre sí
  • La detección de guardados sin cambios acaba con la explosión de versiones que paraliza las colas
  • Cada escritura se audita con diferencias a nivel de campo y linaje causal
  • La gobernanza es visible a través de una API REST, la CLI y una interfaz de administración dual

El resultado

Las ediciones simultáneas se gestionan de forma segura sin sobrescrituras silenciosas, se evita el historial de versiones descontrolado y cada cambio queda registrado con exactamente qué cambió y quién lo causó. Publicado como versión 1.0, un producto propietario de Oronts, con una API REST, 35 herramientas de línea de comandos, una interfaz de administración dual (React en Pimcore 12, ExtJS en Pimcore 11) y un flujo de actividad en directo.

Cómo se ve PimTx en un proyecto Pimcore empresarial

En una plataforma Pimcore de alto volumen, PimTx es la capa de escritura, de modo que las importaciones y los editores dejan de pelearse entre sí.

  • Las importaciones de SAP y de proveedores conviven con los editores humanos sin sobrescrituras silenciosas
  • Las escrituras de cualquier origen, administración, workers y API, se rigen por la misma política
  • La propiedad de campos y las compuertas de aprobación evitan que los cambios del sistema y de los editores colisionen
  • Un registro de auditoría completo responde quién cambió qué, y cuándo, para cada elemento