Retour d’expérience sur C++ & Containers

Pour le compte d’un Gold Partner, j’ai passé un an ou presque sur une vitrine pour Azure. Il s’agissait de mettre en œuvre un cache NoSQL pour des applications ASP.NET MVC.

L’histoire commence avec la récupération de sources C++, le code d’une base de données non terminée sur laquelle je devais voir si on pouvait en tirer quelque chose… Apres quelques tentatives d’incursion dans la bête, j’en arrive a la conclusion que le code est spaghetti et cochon et que y a rien a reprendre si ce n’est le moteur de stockage. Or il se trouve que c’est une lib open-source nommée OpenLDAP-LMDB. C’est une lib Linux qui est en fait un filesystem en mémoire…

Je décide de porter cette lib sous Windows sous forme de DLL.

Ensuite, mon patron veut que l’on fasse bonne figure auprès de Microsoft car on est à la ramasse sur Azure… On réfléchie et on décide qu’on va faire des containers Windows et exposer le service de stockage comme une base NoSQL en tant que concurrent direct de DocumentDB, MongoDB, etc.

En 6 mois, je développe le service C++ Windows qui contient le web server, le service Web REST API JSON qui sert le cache, le binding .NET P/Invoke sur la DLL C et la structure de container et sa registry sur Azure. Je fais quelques articles pour Programmez sur le sujet et voilà, nous avons redoré notre blason auprès de Microsoft. Nous sommes Azure compatible.

Cette expérience C++ Docker sous Azure et très enrichissante. Pour mon patron, avec un CIR et surtout pour moi en connaissance Azure… La prochaine étape consiste à pousser cela sur le Market Place Azure.

Pour la petite histoire j’ai migré le service C++ REST SDK en C# NET avec System.Web. Ça marche aussi. Ca consomme plus de mémoire, c’est pas du C++ mais c’est aussi robuste… 😊.

Prochaine étape, migration sous .Net Core et container Linux. Stay tuned.

 

MVP Summit 2019

Le MVP Summit s’est tenu à Redmond, Seattle, WA, USA sur le campus de Microsoft.

Les informations de cette conférence sont confidentielles et font l’objet d’un NDA donc nous ne pouvons rien partager par contre les informations sont presque déjà toutes présentes sur les blogs Microsoft… Il faut fouiller et lire entre les lignes dans les blogs suivants :

  • Microsoft .NET Core et .NETFx
  • Azure
  • Visual Studio 2019
  • Visual C++

MVP SUMMIT 2019

Download image: HERE