Kestrel : Le transport Libuv est marqué comme obsolète
Les versions antérieures de ASP.NET Core utilisaient Libuv comme détail d’implémentation concernant la manière dont l’entrée et la sortie asynchrones étaient effectuées. Dans ASP.NET Core 2.0, un transport alternatif basé sur Socket a été développé. Dans ASP.NET Core 2.1, Kestrel est passé par défaut à l’utilisation du transport basé sur Socket
. La prise en charge de Libuv a été maintenue à des fins de compatibilité.
À ce stade, l’utilisation du transport basé sur Socket
est beaucoup plus courante que le transport Libuv. Par conséquent, la prise en charge de Libuv est marquée comme obsolète dans .NET 5 et elle sera entièrement supprimée dans .NET 6.0.
Dans le cadre de ce changement, la prise en charge de Libuv n’est pas ajoutée pour les nouvelles plateformes de système d’exploitation (comme Windows Arm64) pendant la période de la version .NET 5.
Pour lire la discussion sur les problèmes bloquants qui nécessitent l’utilisation du transport Libuv, consultez le problème GitHub dotnet/aspnetcore#23409.
Version introduite
5.0 Préversion 8
Ancien comportement
Les API Libuv ne sont pas marquées comme étant obsolètes.
Nouveau comportement
Les API Libuv sont marquées comme étant obsolètes.
Raison du changement
Le transport basé sur Socket
est la valeur par défaut. Il n’existe aucune raison impérieuse de continuer à utiliser le transport Libuv.
Action recommandée
Arrêtez l’utilisation du package Libuv et des méthodes d’extension.
API affectées
- WebHostBuilderLibuvExtensions
- WebHostBuilderLibuvExtensions.UseLibuv
- Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions
- Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions.ThreadCount
- Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions.NoDelay
- Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions.MaxWriteBufferSize
- Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions.MaxReadBufferSize
Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransportOptions.Backlog