gpt4 book ai didi

c# - 为什么 Grpc.Core NuGet 包这么大?

转载 作者:行者123 更新时间:2023-12-04 01:17:57 26 4
gpt4 key购买 nike

最新的 Grpc.Core NuGet 包有 150 MB。它似乎在其生命中稳步增长。下面是几个例子:

  • v1.17.1(2018 年 12 月)48.34 MB
  • v2.23.1(2019 年 8 月)68.11 MB
  • v2.30.0(2020 年 6 月)150.28 MB

也许这不是同类产品,但随便举个例子,Entity Framework Core 包是 859 KB。

我很好奇这个包里有什么让它这么大。对于创建简单 C# 服务的人来说,是否有一些东西不是完全必要的?

最佳答案

包含库和构建脚本的包的核心功能总计不到 2 MB。打包如此之大的原因是它包含用于 LinuxWindowsMac OSX 的运行时文件,以及用于 的 native 库iOSAndroid。让我们看看包的内容以获取详细信息,但只是前两三层目录。

  • 构建 [8 KB]
    • MonoAndroid10
    • net45
    • Xamarin.iOS10
  • 库 [1.9 MB]
    • net45
    • netstandard1.5
    • netstandard2.0
  • 运行时 [137.5 MB]
    • Linux [113.4 MB]
    • 赢得 [12.4 MB]
    • 操作系统 [11.7 MB]
  • 原生[424.6 MB]
    • 安卓 [164.3 MB]
      • x86 [56.3 MB]
      • arm64-v8a [54.3 MB]
      • armeabi-v7a [53.7 MB]
    • iOS [260.3 MB]

您可能想知道为什么移动运行时比 WindowsMacOS 的运行时大那么多。事实证明,Android 有针对三种不同架构的 native 库,每个约 50 MB,而对于 iOS,不仅有一个 *_csharp_ext 库, 但整个 libgrpc 库只有 260 MB。对于 Linux,有两个用于 x86 和 x64 的库,分别为 44.8 MB 和 68.6 MB。但是,我不知道为什么上述库的大小比它们在 WindowsMacOS 上的对应库大得多。

该包涵盖的内容可能远远超过您在项目中实际需要的内容,您可能希望按照 Grpc repository 中的建议使用更适合您的场景的特定语言包。 .

关于c# - 为什么 Grpc.Core NuGet 包这么大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63025744/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com