《B会场-桂素伟-DotNET下AOT项目实战指南.pdf》由会员分享,可在线阅读,更多相关《B会场-桂素伟-DotNET下AOT项目实战指南.pdf(26页珍藏版)》请在三个皮匠报告上搜索。
1、?NETSTARS?.NET.NET?AOTAOT?AOTAOTAOTAOT?AOTAOT?AOTAOT?AOAOT TLinuxWindows95M87MB142ms809k97M83MB309ms746kPublished SizeWorking SetStarupRPSPublished SizeWorking SetStarupRPS.NET 8.NET 8 PerformancePerformance-Native AOTNative AOTLinuxWindows95M87MB142ms809k97M83MB309ms746kPublished SizeWorking SetSta
2、rupRPSPublished SizeWorking SetStarupRPS9.97M40M34ms724k8.87M55M74ms706k.NET 8.NET 8PerformancePerformance-Native AOTNative AOT?AOTAOT?FuncationFuncation as a Serviceas a Service?API?ID?AOTAOT?app.MapGet(/personpros,()=return typeof(Person).GetProperties().Select(s=s.Name).ToArray(););app.MapGet(/pe
3、rsonpros,()=return GetProperty(););string GetProperty()return typeof(T).GetProperties().Select(s=s.Name).ToArray();public class Personpublic string?Name get;set;public int Age get;set;public Sex Sex get;set;public override int GetHashCode()typeof(Person).GetMembers();return base.GetHashCode();dotnet
4、 tool install-global Swashbuckle.AspNetCore.CliJsonConverter(typeof(JsonStringEnumConverter)public enum Sex?,?,?)AOTAOT?Size?null?34674 KBTPS?1192.9 RT?3 P99?19?Speed?36918KBTPS?1163.9 RT?4 P99?20?Size?33881KBTPS?1189.2 RT?3 P99?19FROM scratch AS runtimeFROM alpine AS runtimeFROM AS buildWORKDIR/app
5、COPY aotdemo.csproj.RUN dotnet restore-runtime linux-x64 aotdemo.csprojRUN apt-get update&apt-get install-y-no-install-recommends clang zlib1g-devCOPY.RUN dotnet publish-c Release-r linux-x64-o out aotdemo.csprojWORKDIR/appCOPY-from=build/app/out/*/app/RUN rm-r/app/aotdemo.dbgRUN rm-r/app/appsetting
6、s.Development.jsonEXPOSE 8080ENTRYPOINT/app/aotdemoFROM scratch AS runtimeFROM alpine AS runtimeFROM AS buildWORKDIR/appCOPY aotdemo.csproj.RUN dotnet restore-runtime linux-x64 aotdemo.csprojRUN apt-get update&apt-get install-y-no-install-recommends clang zlib1g-devCOPY.RUN dotnet publish-c Release-