Udostępnij za pośrednictwem


Kestrel: Transport Libuv oznaczony jako przestarzały

Wcześniejsze wersje ASP.NET Core używały biblioteki Libuv jako szczegółów implementacji sposobu wykonywania asynchronicznych danych wejściowych i wyjściowych. W ASP.NET Core 2.0 opracowano alternatywny Sockettransport oparty na technologii . W systemie ASP.NET Core 2.1 firma Kestrel domyślnie przełączała się na korzystanie z transportu opartego Socketna technologii . Obsługa biblioteki Libuv została zachowana ze względów zgodności.

W tym momencie korzystanie z transportu opartego Socketna bazie jest znacznie bardziej powszechne niż transport Libuv. W związku z tym obsługa biblioteki Libuv jest oznaczona jako przestarzała na platformie .NET 5 i zostanie całkowicie usunięta na platformie .NET 6.0.

W ramach tej zmiany obsługa biblioteki Libuv dla nowych platform systemu operacyjnego (takich jak Windows Arm64) nie zostanie dodana w przedziale czasowym platformy .NET 5.

Aby zapoznać się z dyskusją na temat problemów blokujących, które wymagają korzystania z transportu Libuv, zobacz problem z usługą GitHub pod adresem dotnet/aspnetcore#23409.

Wprowadzona wersja

5.0 (wersja zapoznawcza 8)

Stare zachowanie

Interfejsy API Libuv nie są oznaczone jako przestarzałe.

Nowe zachowanie

Interfejsy API Libuv są oznaczone jako przestarzałe.

Przyczyna wprowadzenia zmiany

Transport Socketoparty na protokole jest domyślny. Nie ma żadnych atrakcyjnych powodów, aby nadal korzystać z transportu Libuv.

Zaprzestanie korzystania z metod pakietu Libuv i rozszerzeń.

Dotyczy interfejsów API