赛捷软件论坛's Archiver

lynn.yu 发表于 2018-11-29 15:27

[KB 79722功能解说] 我是否可以在一个虚拟环境中部署Sage EM企业管理?(下)

•  [b]Node.js(Syracuse服务器)[/b]——最有可能是性能不佳的元凶
    •        给它提供比其他两个服务器更多的虚拟机功率(比你分配给MongoDB的CPU和内存多4倍)。
    •        将虚拟机的大小至少调整为每个内核2GB RAM(因此,16核至少为32GB)。因为Node.js是单线程的,所以如果你有16核,而node.js进程占了整个CPU的6.25%,那么实际上它的CPU线程是饱和的——这样不好。
    •        一个健康的node.js进程应当少于1GB或RAM。如果它超过了这个数值,那么它就会开始大肆收集垃圾,而这通常就是其CPU线程将开始饱和的时候。因此,将单个node.js进程保持在1个CPU的75%以下(16个1GB核心虚拟机整体CPU的5%)这点非常重要。
    •        可以用Syracuse管理模块中的“主机”实体来更改node.js进程数。一开始,你应当将node.js进程数设为1.5 * 核数(16核就是24个node.js进程)。然后,你应该在应用程序运行时观察总体内存使用情况,并减少node(节点)进程数,直到总体内存使用率达到75-80%。
    •        如果某些node.js进程在达到该限制时仍然使CPU饱和,那就意味着你需要更大的虚拟机或需要一个Syracuse服务器的集群。在主机实体功能中,你还可以为web service请求配置一个进程数。这项设置极大地取决于你web services的活动。
    •        如果你的很大一部分交易是通过web service实现的,那么你应该部署node.js集群,并指定集群中的一个或多个node供web service专用。
    •        不要把web service和交互式会话混合放在同一个群集节点上。Syracuse服务器几乎不怎么用到磁盘。所以,请把宝贵/昂贵的磁盘空间保留给MongoDB和Elastic Search。
    •        计划获取恰当的备份工具,以便你可以在线保存虚拟机,并确保预防物理服务器和存储系统的冗余。

如果是在VMware ESX(或Hyper-V)上设置的虚拟化基础架构,且将MS-SQL Server数据库安置在专用虚拟机中(针对每个vCPU可降低许可证成本),那么应遵循以下规则:
•  虚拟化主机电源管理应设置为“最大功率”(而不是“平衡“模式”或“省电”模式),否则CPU可能甚至无法以最大速度运行几分之一秒。
•  虚拟网卡应当是VMXNET3类型的(并在Windows中申请10 Gbps网络连接,即使是虚拟的)
•  如果技术上可行(没有CPU或内存限制)的话,应当将具有应用程序/主runtime和附加runtime的MS-SQL Server数据库虚拟机和X3虚拟机放在同一台ESXi主机中,从而避免runtime和数据库之间的网络连接走物理网络(在这种情况下只有一个虚拟交换机)。


[b]类别[/b]
文档资料
查找系统要求或其他特定文档,建议查找较新的文档或文档中的报错
安装

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.