Azure Native Qumulo Maintenant disponible dans l'UE, au Royaume-Uni et au Canada - En savoir plus

Pourquoi je suis enthousiasmé par Qumulo et Rust

Rédigé par:

En tant que startup, Qumulo donne à ses ingénieurs une grande influence pour décider comment nous faisons les choses. Et depuis mon arrivée en tant que stagiaire il y a cinq ans, j'ai pu participer à de nombreuses décisions importantes prises par l'ingénierie. Donc, la décision de Qumulo de commencer à utiliser le langage de programmation Rust dans notre produit principal d'ici la fin de l'année est une décision qui me passionne particulièrement - à la fois en tant qu'ingénieur et pour notre produit - un système de fichiers d'entreprise appelé File Fabric, ou QF2.

La rouille est un langage de programmation de systèmes qui a beaucoup progressé ces dernières années et bonne raison. La langue fournit beaucoup de fonctionnalités super excitantes. Pour cet article, je me concentre sur peut-être la plus éclatante - la sécurité de la mémoire.

Vous voulez en savoir plus sur Qumulo et Rust? Rejoignez-nous à notre Meetup Rust.

QF2 est actuellement écrit en C. Ce n'était peut-être pas un choix surprenant. Un grand nombre de logiciels système sont écrits en C, qui est le langage de programmation de facto de nombreux utilisateurs souhaitant écrire des logiciels «de bas niveau» ou peu abstraits sur l’architecture d’un jeu d’instructions.

Travaillant en C, je me suis vu, ainsi que d'autres programmeurs, continuer à écrire les mêmes bogues encore et encore : débordements de mémoire tampon, conditions de concurrence, utilisation après utilisation libre et fuites de mémoire, pour n'en nommer que quelques-uns. Historiquement, nous avons combattu ces problèmes de sécurité de la mémoire avec un certain nombre d'outils différents (par ex. Valgrind, Assainisseur d'adresse) et les pratiques - qui reposent toutes sur l'exécution d'un programme pour déterminer qu'il y a un problème. C'est pourquoi le plus grand avantage de Qumulo dans cette bataille est notre forte concentration sur les tests unitaires.

Tout cela représente beaucoup de ressources dépensées sur ce problème. Plus vite nous pouvons détecter ces problèmes, mieux c'est pour tout le monde. Plus le délai d'exécution est faible, plus nous économisons le temps de chacun. Rust nous aide à détecter rapidement ces problèmes, à la compilation, et peut détecter des bogues sans même exécuter le code. Il le fait en construisant le concept de propriété de la mémoire dans la langue elle-même.

L'accent mis par Qumulo Engineering sur les tests est nécessaire car nous expédions une nouvelle version de QF2 toutes les deux semaines. Nous sommes obsédés par l'exactitude des programmes - une nécessité absolue, alors que l'un de ces problèmes de sécurité de la mémoire pourrait se transformer en une énorme affaire pour l'un de nos clients.

En ce sens, Qumulo et Rust s'accordent parfaitement. J'espère que Rust pourra nous aider à mieux faire notre travail. Ainsi, je me joins à beaucoup de mes collègues ingénieurs de Qumulo pour être heureux d’utiliser Rust.

 

Articles Similaires

Remonter en haut