qfarm /load,这是一个很有意思的命令,是用来查询当前服务器负载情况,也可以用来排查测试过程中出现的个别问题。

 

  最近xenapp6安装完毕,点击发布的应用程序时,总会有提示说“An error has occurred while connecting to the requested resource”,如果在命令行中使用qfarm /load命令,会发现负载达到20000。

  那么这个20000是个什么概念?

  暂时还没有查到实证,不过有朋友说这个是未配置好license sever造成的,有遇到此问题的朋友可以尝试配置下license server服务器指定和端口设定;

  也可能是补丁的问题,可以把xenapp补丁都打上,然后重新启动服务器;(我曾经打过补丁解决过这个问题)

  也可能是负载均衡设置问题,需要手动添加一条负载均衡策略。

  正常情况下,这个qfarm /load值应该是0,每开启一个应用负载增加100,上限是10000(默认),也就是说最多支持100个应用。

  当一台XenApp服务器刚刚启动并通知数据存储器自己的负载的时候,老版本的XenApp会通知自己的 负载为0。这样就会导致数据存储器将新的访问要求转向这台正在启动的XenApp服务器。我们都知道Windows系统刚刚启动的状态负载并不低,CPU 和内存都在忙着启动服务,将很多程序调入内存。通常要等待一会儿CPU使用率才会下降。在这个状态下新的进程要求可能会被处理的很慢,而数据存储器却一直认为这台XenApp服务器的负载很低,于是不停的将新的进程发到这台XenApp服务器上。结果就是这台XenApp服务器越来越慢进入一种类似死机的 状态,这台XenApp服务器就成了类似宇宙里的黑洞一样,把新的进程要求不断的”吸”进去却无法启动进程。新版本中修正了这个问题,在服务器刚刚启动的时候,负载会是10000——也就是满负载,这样就可以避免黑洞效应出现。启动之后过了一段时间负载值就会开始下降并开始接受新的进程。



http://blogs.citrix.com/2010/06/01/%E7%90%86%E6%83%B3%E7%9A%84citrix%E6%A1%8C%E9%9D%A2%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83%E4%B9%8B9-xenapp%E7%9A%84%E8%B4%9F%E8%BD%BD%E7%AE%A1%E7%90%86/