Introducción a Karyos
Karyos es un transporte de mensajería de baja latencia escrito en Rust. Esta página explica qué hace y qué contiene la versión 0.1.0-alpha.1.
Karyos es un transporte de mensajería de baja latencia escrito en Rust. Las aplicaciones publican y se suscriben a flujos de mensajes mediante log buffers en memoria compartida. Los gestiona un media driver, que se ejecuta integrado en la aplicación o como un proceso aparte.
La corrección ante pausas, caídas y escritores concurrentes va primero. Se
verifica con model checking, Miri y un simulador determinista. El código
unsafe se limita a los dos crates de más bajo nivel, y la compilación por
defecto no compila C.
Advertencia
0.1.0-alpha.1 es una versión alfa temprana para evaluación, no para producción. Las API, los formatos de transmisión y la disposición de la memoria compartida cambiarán sin previo aviso. Esta versión alfa no declara ninguna cifra de latencia ni de rendimiento.
Qué contiene la versión alfa
- Driver integrado, en todas las plataformas. Publicación y suscripción en un solo proceso mediante log buffers.
- Ruta de control entre procesos, en Linux. El driver admite un proceso cliente a través de un socket Unix y le pasa regiones de memoria compartida selladas. Los flujos de datos entre procesos están previstos para 0.1.0-alpha.2.
- Componentes para versiones posteriores: una tabla de conflación por clave, un diario de registros acotado, registros de traza, muestreo, calibración de reloj e histogramas de latencia, un simulador determinista y un banco de pruebas de rendimiento.
Siguientes pasos
- Compila y prueba el espacio de trabajo.
- Consulta en qué plataformas funciona cada característica.