我正试图对无服务器的东西进行心理转变,但我发现自己不明白如何移植我现有的后端代码。我需要澄清以下假设:
- Azure 函数是否被视为单线程代码?
- 在函数中使用 TPL 和 PLINQ 总是一个坏主意吗?
static
与常规应用服务相比,会员的开销是多少?基本上,我们对AppDomain
寿命有任何保证吗?- 如果我使用诸如NLog或log4net之类的日志框架,其异步附加程序需要专用线程,我需要担心什么吗?
- 如何监控每个函数运行占用了多少内存?
是否可以设置一个 DI 容器以便将我的依赖项注入到
Run
方法中?像这样的东西:[FunctionName("ServiceBusQueueTriggerCSharp")] public async Task RunAsync( [ServiceBusTrigger("myqueue", AccessRights.Manage, Connection = "meconn")] string myQueueItem, IBusinessLogicService blService, ILogService logService, IMailingService mailService) { }
是否有可能获得一个
CancellationToken
inRun
方法,以便我可以优雅地取消/关闭?