我试图更好地理解函数应用程序的可扩展性行为,但我对术语感到困惑。具体来说,我试图了解我的应用程序有多少“服务器”和多少“容器”正在运行,但我无法确定这些指标到底是什么:
起初我认为“主机”会接近VM,而“实例”会接近容器,但根据我所看到的,实际上可能是相反的情况。在始终可用的功能应用程序上,ProcessId 的
dcount
在 1 和 2 之间变化,最小为 3,所以我无法真正理解这个 process-id 是什么。除了一些“主机”峰值之外,AppRoleInstance 和 HostInstanceId 在大多数情况下都是匹配的。作为参考,我使用的查询与此类似:
AppTraces
| where AppRoleName = <function-app-name>
| summarize
dcount(tostring(AppRoleInstance)),
dcount(tostring(Properties.HostInstanceId)),
dcount(tostring(Properties.ProcessId))
by bin(TimeGenerated, 1h)
| render timechart
在始终可用的功能应用程序上,ProcessId 的
在 1 和 2 之间变化,最小为 3,所以我无法真正理解这个进程 ID 是什么。dcount
一旦主机启动某个功能,进程 ID 就会在 Kudu 站点中分配。