Azure Native Qumulo ahora disponible en la UE, el Reino Unido y Canadá: Más información

Por qué estoy entusiasmado con Qumulo y Rust

Escrito por:

Como startup, Qumulo les da a sus ingenieros mucha influencia a la hora de decidir cómo hacemos las cosas. Y desde que me incorporé como pasante hace cinco años, me he involucrado en muchas de las decisiones importantes que ha tomado Ingeniería. Entonces, la decisión de Qumulo de comenzar a usar el lenguaje de programación Rust en nuestro producto principal para fin de año es algo que me entusiasma particularmente, tanto como ingeniero como para nuestro producto, un sistema de archivos empresarial llamado File Fabric, o QF2.

Rust es un lenguaje de programación de sistemas que ha ganado mucha tracción en los últimos años, y para buena razón. El lenguaje proporciona muchas características súper emocionantes. Para este artículo, me estoy centrando en quizás el más destacado: la seguridad de la memoria.

¿Quieres aprender más sobre Qumulo y Rust? Únete a nosotros en nuestro Rust Meetup.

QF2 está actualmente escrito en C. Esta quizás no fue una elección sorprendente. Una gran cantidad de software del sistema está escrito en C, que ha sido el lenguaje de programación de facto de muchos que desean escribir software de "bajo nivel" o poca abstracción sobre la arquitectura del conjunto de instrucciones de una computadora.

Trabajando en C, me he visto a mí y a otros programadores continuar escribiendo los mismos errores una y otra vez: desbordamientos de búfer, condiciones de carrera, uso después de la liberación y pérdidas de memoria, solo por nombrar algunos. Históricamente, hemos combatido estos problemas de seguridad de la memoria con varias herramientas diferentes (p. Ej. Valgrind, Desinfectante de direcciones) y prácticas, todas las cuales dependen de la ejecución de un programa para determinar que existe un problema. Es por eso que la mayor ventaja que tiene Qumulo en esta batalla es nuestro gran enfoque en las pruebas unitarias.

Todo esto equivale a una gran cantidad de recursos gastados en este problema. Cuanto antes podamos detectar estos problemas, mejor será para todos. Cuanto más corto sea el tiempo de respuesta defectuoso, más tiempo ahorrará a todos. Rust nos ayuda a detectar estos problemas rápidamente, en tiempo de compilación, y puede encontrar errores sin siquiera ejecutar el código. Lo hace construyendo el concepto de propiedad de la memoria en el propio lenguaje.

El énfasis de Qumulo Engineering en las pruebas es necesario porque enviamos una nueva versión de QF2 cada dos semanas. Estamos obsesionados con la corrección del programa, una necesidad absoluta, cuando cualquiera de estos problemas de seguridad de la memoria podría convertirse en un gran problema para uno de nuestros clientes.

En este sentido, Qumulo y Rust son una combinación perfecta entre sí. Mi esperanza es que Rust pueda ayudarnos a hacer nuestro trabajo mejor. Por lo tanto, me uno a muchos de mis colegas ingenieros de Qumulo para estar entusiasmados con el uso de Rust.

 

Artículos Relacionados

Ir al Inicio