Asp.Net Core 1.0 et Microsoft Azure Les dessous de la plateforme Microsoft experiences
Mélanie Daboudet
Sébastien Ollivier
@m_dabMicrosoft
Florent Santin
@sebastienollInfinite Square
@santinfloInfinite Square
• Le projet : de inwink à Microsoft experiences
• Les choix techniques : - Développement serveur- Base de données
• Le déploiement dans Azure
• Evolutions et futur
agenda
N° 3
• Microsoft experiences c’est :• 15 000 participants à l’événement, +100 000 en ligne• Plus de 80 personnes pour gérer l’organisation sur +6 mois
• Objectif - disposer d’une plateforme de gestion de l’évènement :• Coordination du contenu (sessions, thèmes, créneaux
horaires…)• Logistique (salles, exposants, sécurité…)• Gestion des participants (inscription, accueil, animation,
évaluation…)• L’expérience des participants
Le besoin fonctionnelMicrosoft experiences
• Plateforme SaaS de gestion d’évènements B2B
• Développé pour le Cloud :• Multi-tenants• Scallable• Extensible par API
Le produit utiliséinwink
Les difficultés• Décembre 2015 à Juin 2016, de la beta à la RTM• L’outillage• La gestion de la configuration
Les points positifs• La montée en compétences rapide• Open Source• L’orientation packages• Léger, rapide, composable• 100% asynchrone
ASP.NET CoreDifficultés / points positifs
N° 9
Les difficultés• Un temps d’architecture et d’outillage
Les points positifs• Gestion du multi-tenant « confortable »• Isolation des données• Performance cloud• Les nouveautés SQL Server• Entre le SQL et le NO SQL
Côté DataDifficultés / points positifs
N° 12
Serveur
User / eventsSQL Azure
Events détailSQL Azure
StorageBlobs / queues
DocumentDb
Recomendations
Events détailSQL Azure
RedisCache
AzureQuoi? Pourquoi faire?
Service plan
Mail serverfunction
Notification servicesfunction
Recomendations servicesfunction
Service plan
Authentification serverWeb App(.NET Core)
APIAPI App
(ASP.NET Core)
Backoffice / event selectorWeb App
Badges, mailsWeb App
Product websiteWeb App
Registration websiteWeb App(ASP.NET Core)
Speaker backoffice
Exhibitor backoffice
CompanionWeb App(node.js/react)
Les difficultés :• Des choix d’outils en preview• IIS Kestrel• Les scripts d’intégration continue
Les points positifs :• Architecture modulaire / modulable / (auto-)scallable• Les services : SendGrid, NotificationHub, Redis, achat de certificat
SSL…• Une équipe de dev à l’exploitation ! • App Insight
Côté CloudDifficultés / points positifs
N° 16
• Migration vers 100% .NET Core• Micro services : • Supprimer les websites au profil des micro services
• Encore plus d’utilisation de DocumentDB• De la documentation de l’API pour pouvoir les diffuser• Gérer les releases dans VSO
• Du repos
Evolution de l’architecture
N° 19