|
4 min de lectura
|

Termbox 1.0

Resumir este artículo con:
ChatGPTPerplexityClaudeGrok

Hoy publicamos Termbox 1.0, tras dos años construyendo un servidor de terminología FHIR de alto rendimiento, diseñado para soportar cargas de trabajo terminológicas a gran escala.

Decidir cuándo llamar «1.0» a un servidor de terminología no es sencillo.

  • ¿Es cuando admite todas las operaciones de la especificación FHIR?
  • ¿Cuando supera todas las pruebas del IG del ecosistema de terminología FHIR?
  • ¿Cuando puede servir SNOMED CT, LOINC, RxNorm e ICD?
  • ¿O cuando admite funciones avanzadas como el ECL completo de SNOMED CT?

Todos estos son hitos valiosos. Ninguno de ellos, por sí solo, define si un producto está listo para producción.

Para Termbox, la prueba decisiva fue reemplazar un servidor de terminología que ya atendía a clientes reales y gestionar toda la carga de trabajo en producción de forma fiable.

Reemplazando un sistema real

Antes de Termbox, las solicitudes a tx.health-samurai.io eran atendidas por un despliegue de Ontoserver. Reemplazarlo nos dio una definición de preparación mucho más concreta que cualquier lista de características podría ofrecer.

La migración llevó seis meses. Primero reprodujimos el contenido terminológico disponible en el servicio existente. El objetivo era garantizar que reemplazar Ontoserver por Termbox no interrumpiera las aplicaciones que ya dependían del servicio de terminología existente.

Durante la migración, capturamos solicitudes reales realizadas por los clientes de tx.health-samurai.io. Esto produjo un corpus de más de 250.000 solicitudes únicas, dominado por las operaciones que los clientes de terminología utilizan realmente: ValueSet/$validate-code, ValueSet/$expand, CodeSystem/$lookup, CodeSystem/$subsumes y CodeSystem/$validate-code.

Reproducimos ese corpus contra Termbox y comparamos cada respuesta con la respuesta original de Ontoserver. Las diferencias fueron clasificadas, investigadas y, o bien aceptadas cuando ambos comportamientos eran válidos, o bien convertidas en trabajo de implementación cuando ponían de manifiesto una capacidad ausente o un resultado incorrecto.

El objetivo era la paridad en lo que importaba: las solicitudes, el contenido y el comportamiento en los que nuestros clientes confiaban.

Evidencia procedente de producción

La migración avanzó como un despliegue gradual en producción hasta alcanzar el 100% del tráfico, y Termbox se convirtió en el sistema que atiende esas solicitudes en tx.health-samurai.io.

Ese cambio definitivo fue el hito decisivo para el 1.0.

Cifras de producción del primer mes tras completar el despliegue:

  • Solicitudes atendidas: más de 2M
  • Tiempo de respuesta mediano: 2 ms
  • p95: 6 ms
  • p99: 36 ms

Junto con la observación en producción, construimos una suite de rendimiento dedicada, el TX Benchmark, para medir la latencia, el rendimiento y el consumo de recursos en cargas de trabajo terminológicas representativas. El rendimiento se trató como parte de la preparación para producción.

Estable, no terminado

Termbox 1.0 admite CodeSystem, ValueSet y ConceptMap, junto con las operaciones principales utilizadas para buscar y validar códigos, expandir, probar la subsunción y traducir conceptos. Admite grandes distribuciones terminológicas e incluye un subconjunto creciente del ECL de SNOMED CT.

Queda trabajo por delante. No todas las operaciones y parámetros de terminología FHIR están soportados, y algunas capacidades siguen en desarrollo. Los límites actuales están documentados en la página de capacidades de Termbox.

También estamos validando Termbox a través de la suite de pruebas del ecosistema de terminología FHIR. Termbox supera actualmente más del 90% de las pruebas en la categoría general, y continuamos el trabajo en las categorías específicas de terminología.

La suite de pruebas mide la interoperabilidad estandarizada y la conformidad en una matriz definida. La migración demostró que Termbox podía atender una carga de trabajo en producción diversa y existente de forma fiable. Queremos ambas formas de evidencia.

Qué significa el 1.0

Para Termbox, el 1.0 comunica que el producto es estable y está listo para soportar cargas de trabajo en producción. Es la versión que estamos preparados para respaldar, tanto si Termbox se consume como servicio SaaS gestionado como si se despliega en las instalaciones propias.

La hoja de ruta continúa: mayor conformidad, soporte más profundo para terminologías individuales, más ECL, funciones de procesamiento del lenguaje natural, una superficie SQL más amplia y una distribución de contenido mejorada. Construiremos estas incorporaciones sobre una base probada en producción.

Termbox es 1.0 porque ya está haciendo el trabajo, bajo tráfico real en producción. Pruébelo como SaaS, o empiece a experimentar con él en el sandbox.

Compartir este artículo
Comments
Comments
Sign in
Loading comments...
Subscribe to our blog

Get the latest articles on FHIR, interoperability, and healthcare IT.