Aws-lambda-dotnet: 支持 .NET Core 2.1

创建于 2018-05-09  ·  45评论  ·  资料来源: aws/aws-lambda-dotnet

你好,

只是好奇 .NET Core 2.1 支持是否会在发布后不久提供,或者我们是否可以期望它需要更长的时间,就像 .NET Core 2.0 发生的情况一样? 是否需要对 Lambda 进行任何重大更改?

另一方面,是否有支持 .NET Core 2.1 RC1 的计划? 🤔

谢谢!

最有用的评论

Lambda 使用 2.1.4 进行部署,而 2.1.5 正在开发管道中。 Lambda自述文件已更新为跟踪当前版本的新表。 希望这有助于提高知名度。

所有45条评论

我们正在努力使 .NET Core 2.1 在 Lambda 中可用。
不过,我无法对任何具体的时间表发表评论。
没有计划支持 .NET Core 2.1 RC1。

FYI .NET Core 2.1.0 今天正式发布。 等不及要升级了!

@raRaRa是吗? 我在任何地方都找不到

所有 nuget 包都已更新。 从它的外观来看,仍然没有任何公告。

.net core 2.1 在 Lambda 中可用吗? 根据这篇文章,它看起来还没有。

它尚不可用。 不过,该博客是查找公告的正确位置。

进展如何? 😁

还在努力...

出于好奇,当谈到 Lambda 时,您对 2.1 中的哪些功能最感兴趣?

@normj主要是运行时和网络性能改进, HttpClientFactorySpan<T>Memory<T>和朋友。

另一方面,您是从一开始就致力于支持 .NET Core 2.1.1 ,它有一些巧妙的错误修复,还是我们可以期望首先支持2.1.0

感谢您让我们了解最新情况,非常感谢。 喜欢你们迄今为止所做的出色工作。 ❤️

我最期待 .NET Core 2.1 的事情是疲劳编译,因为我知道它应该会在冷启动时间上提供一些显着的改进。

基于.NET Core 2 在 2.1 发布后的生命周期结束,我们能否估算出何时准备好计划升级?

有什么发布日期吗? 等待此修复与 MongoDB 地图集的兼容性问题。

对以下功能感兴趣。

  • 英孚 2.1

    • 表现

    • 通过...分组

  • .Net 核心 2.1

    • ApiController属性和自动模型验证

好像2.1是在 22 分钟前发布的!

供参考

如 [3] 中所述,我们正在开发 6 月下旬发布的 .NET Core 2.1.1 更新。 我们会尽快在 AWS Lambda 环境中提供它。

@normj VSTS AWS Lambda Deploy Function 扩展更新以允许选择运行时 2.1 需要多长时间?

image

@aaronhudon我们计划在下周使用新的枚举更新 VSTS。 不幸的是,它与我们在下一个版本中推出的其他一些 VSTS 功能相结合。 让我知道这是否会成为一个问题,我可以看到我们可以解决的问题。

似乎 .NET Core 2.1.2 现在已经发布了一些安全更新。 Lambda 支持最新版本的 .NET Core 是否会变得困难/耗时?

@raRaRa我们正在开发 2.1.2,但我不确定它在 Lambda 中的时间。

我将 AWS Toolkit 升级到版本 1.14.4.0,将 Microsoft.AspNetCore.App 升级到 2.1.0,将 Amazon.Lambda.Tools 升级到 2.2.0

当我发布到 AWS Lambda 时,对话框显示正确的框架 (2.1) 并顺利部署。

但是,当我访问 API 时,我收到一个错误,CloudWatch 说:

It was not possible to find any compatible framework version
The specified framework 'Microsoft.AspNetCore.App', version '2.1.0' was not found.
- Check application dependencies and target a framework version installed at:
/
- Alternatively, install the framework version '2.1.0'.
Failed to execute the Lambda function. The dotnet CLI failed to start with the provided deployment package. Please check CloudWatch logs for this Lambda function to get detailed information about this failure.: LambdaException

难道我做错了什么?

在 AWS::Serverless::Function 资源的 serverless.template 文件中,您是否将Runtime属性更新为dotnetcore2.1 。 抱歉,我们应该把它放在博客文章中。

@normj那是缺失的部分。 谢谢!

我发现要启用分层编译,需要将其设置为 AWS 函数环境变量。 例如在 serverless.template 中:

"Environment": {
    "Variables": {
        "COMPlus_TieredCompilation" : 1
    }
}

似乎在冷启动上有显着的性能提升。

@ferugi超级有趣,谢谢分享。 您知道使用分层编译是否有任何已知的副作用,例如,它实际上是否会导致整体性能变差,而启动时间会变得更快。

@ferugi您有机会量化性能改进吗? 在我的测试中我并没有真正注意到太多,但我可能没有足够的真实世界场景。

抱歉回复慢。 @normj我没有一个很好的真实示例,但是使用 Lambda 和 API Gateway 进行的快速测试给出了这些结果(128mb 内存)。
@raRaRa我不知道给你一个真正的答案。 也就是说,在我运行的测试中,启用分层编译后,后续调用的响应时间看起来确实有一些变化。

@normj对 .NET Core 2.1.2的支持有什么更新吗? 谢谢!

没有更新。 我们仍在努力尽快将其推出。

[已解决] 通过在 Beanstalk 中删除并重新创建我的应用程序实例,然后重新部署。

显然,根据下面的链接,beantalk 原生支持 Dotnet Core 2.1。 但是我仍然收到“进程失败”消息,就好像它不是一样。

https://aws.amazon.com/about-aws/whats-new/2018/06/aws-elastic-beanstalk-supports--net-core-2-1-on-windows-server-p/

更新到 2.1.2 后,2.1.0 将不再允许对 cshtml 文件进行动态更改。 我收到此错误https://github.com/dotnet/core/issues/1728

这迫使我们升级到 2.1.2 以恢复生产力。 不幸的是,我们无法再部署到 Lambda,所以我们目前陷入困境。

没有最新补丁也很卡。 2.1.1 / 2.1.2 会很快准备好,还是我们应该考虑完全改变我们的架构,使用 Fargate/自托管 Kubernetes 来自建 docker 容器?

我们正在努力尽快发布 2.1.2。
你不应该需要改变任何东西。

与此同时,2.1.3 已经发布。

只是出于好奇,升级到最新的 .NET 主要或次要版本涉及什么? 感觉就像一个连续的追赶周期。

在幕后有很多步骤来构建、测试、验证和部署新的运行时到 AWS Lambda。

你对追赶周期的事情是完全正确的。 改进这一点是我们对 AWS Lambda .NET Core 支持的首要任务之一。

2.1.4 现已推出。

我们现在正在努力解决这个问题。 我们会及时通知您。

发现问题已在 .NET Core 2.1.4 中得到修复。

似乎是让 Lambda 环境尽快升级到 2.1.4 的一个很好的理由 :) - 因为它可能有助于充分利用底层 CPU 资源。

感谢您的工作。

@melih154哇,我不知道这个问题。 .NET Core 2.1 中是否默认启用了新套接字?

我们真的需要 .NET Core 2.1.4 支持。 🍕

Lambda 使用 2.1.4 进行部署,而 2.1.5 正在开发管道中。 Lambda自述文件已更新为跟踪当前版本的新表。 希望这有助于提高知名度。

确实如此! 太感谢了。

此页面是否有帮助?
0 / 5 - 0 等级