Azure Service Fabric - 提高本地性能
Azure Service Fabric - Improve Local Performance
当我在本地部署或运行集群时,我在本地机器上面临 资源急剧下降。
我想知道您是否可以推荐一种方法来减轻这种负面影响(软件和硬件)?
附加信息:
It is important to understand that the Service Fabric local cluster is
not an emulator or simulator. It runs the same platform code that is
found on multi-machine clusters. The only difference is that it runs
the platform processes that are normally spread across five machines
on one machine.
尽管我不得不添加一个 SSD,因此 OS 和 Service Fabric 不会在总线资源上竞争。添加该 SSD 并使用 PowerShell 将集群移动到新驱动器(没有 OS 的驱动器)后,我发现效果可以忽略不计。查看性能监视器,似乎大部分 IO 仍在主 (OS) 驱动器上。有什么想法吗?
我有一台具有以下规格的标准开发机器:
- 较新的 i7 CPU
- 16GB 内存
- 一个 SSD
- 还有一个很棒的显示器(开玩笑 :-)
这个问题可能也很适合 HW 论坛
Service Fabric SDK 在您的开发机器上创建一个 5 节点集群,这意味着每个系统服务有 5 个实例(进程)。您可以将节点数量减少到 3 个(最小值)。
为此,您必须手动编辑集群清单并重新创建它。清单位于
%ProgramFiles%\Microsoft SDKs\Service Fabric\ClusterSetup\NonSecure\ClusterManifestTemplate.xml
- 删除
NodeType3
和NodeType4
- 删除
_Node_3
和_Node_4
- 更改:
ExpectedClusterSize
到2
,TargetReplicaSetSize
到3
和MinReplicaSetSize
到2
(出现多次;你可以试试这里的值较低,我还没有机会测试它)
注意:每次更新 SDK 时都需要应用这些更改。
保存文件后,重新创建本地集群(例如使用集群管理器托盘应用程序)。
此外,您应该确保在部署应用程序时,它们也具有本地部署的默认值(即实例和分区计数设置为 1)。这些通常出现在 Local.xml
参数文件中。
您可以尝试的最后一件事是将您的服务 EXE 配置为构建为 "Windows Application" 而不是 "Console Application"(在每个服务的项目属性中),这将减少 conhost.exe
进程。
当我在本地部署或运行集群时,我在本地机器上面临 资源急剧下降。
我想知道您是否可以推荐一种方法来减轻这种负面影响(软件和硬件)?
附加信息:
It is important to understand that the Service Fabric local cluster is not an emulator or simulator. It runs the same platform code that is found on multi-machine clusters. The only difference is that it runs the platform processes that are normally spread across five machines on one machine.
尽管我不得不添加一个 SSD,因此 OS 和 Service Fabric 不会在总线资源上竞争。添加该 SSD 并使用 PowerShell 将集群移动到新驱动器(没有 OS 的驱动器)后,我发现效果可以忽略不计。查看性能监视器,似乎大部分 IO 仍在主 (OS) 驱动器上。有什么想法吗?
我有一台具有以下规格的标准开发机器:
- 较新的 i7 CPU
- 16GB 内存
- 一个 SSD
- 还有一个很棒的显示器(开玩笑 :-)
这个问题可能也很适合 HW 论坛
Service Fabric SDK 在您的开发机器上创建一个 5 节点集群,这意味着每个系统服务有 5 个实例(进程)。您可以将节点数量减少到 3 个(最小值)。
为此,您必须手动编辑集群清单并重新创建它。清单位于
%ProgramFiles%\Microsoft SDKs\Service Fabric\ClusterSetup\NonSecure\ClusterManifestTemplate.xml
- 删除
NodeType3
和NodeType4
- 删除
_Node_3
和_Node_4
- 更改:
ExpectedClusterSize
到2
,TargetReplicaSetSize
到3
和MinReplicaSetSize
到2
(出现多次;你可以试试这里的值较低,我还没有机会测试它)
注意:每次更新 SDK 时都需要应用这些更改。
保存文件后,重新创建本地集群(例如使用集群管理器托盘应用程序)。
此外,您应该确保在部署应用程序时,它们也具有本地部署的默认值(即实例和分区计数设置为 1)。这些通常出现在 Local.xml
参数文件中。
您可以尝试的最后一件事是将您的服务 EXE 配置为构建为 "Windows Application" 而不是 "Console Application"(在每个服务的项目属性中),这将减少 conhost.exe
进程。