大量输出goes into the waiting for execution: 5 in queue日志。

 
此现象的日志因以下理由输出到system.log。

首先,如果客户端对Intramart请求处理,一般进行并列处理。
以下是设置可以进行并列处理的最大数量的值:

conf/imart.xml
------------------------------------------ 
・intra-mart/platform/network/server/threads 
------------------------------------------ 

接收超出最大数量的请求时,到进行服务器处理时存储在队列,等待处理。
以下是可以存储在队列的最大请求数(待处理的队列数): 

conf/imart.xml
------------------------------------------ 
・intra-mart/platform/service/application/http/accept/queue 
------------------------------------------ 

此时,为了表示处理请求已存储在队列,日志中将输出以下信息。 

------------------------------------------ 
goes into the waiting for execution: XX in queue 
------------------------------------------  

※在“XX”中将输出目前存储在队列的处理请求数。

由于不能处理超出此队列最大值的数量的处理请求,因此,在那样的情况下将向客服端返回HTTP状态码503。

由于处于不能接收新的请求队列的状态,因此不能接收登记等请求,但在前面的请求队列处理完成后,可以再次接收请求。
这是设计(式样)上的运行,不是故障。


【规避方法】

修改以下设置后,不会输出该信息。
因为同时执行的数量越多,服务器负荷越高,请按您的系统环境进行设置。

<conf/imart.xml>
・intra-mart/platform/network/server/threads

这是可以同时处理的网络请求数。
同时接收比此指定值数量更多的请求时,将处理与指定值相同数量的请求,但其他请求将成为等待完成执行中的处理的状态。

※注意事项

如果在此值中设置更大值,则将同时执行更多程序,有可能消耗大量服务器资源。
请不要进行超出服务器的处理能量的设置。

<conf/imart.xml>
・intra-mart/platform/service/application/http/accept/queue

这是超出可以同时处理的最大请求数 intra-mart/platform/network/server/threads 时,等待处理的队列的最大数。

通过此设置,队列接收超出可以临时保存的数量的请求时,将返回HTTP状态码503。
有关设置的详细信息,请参阅有详细记载的设置指南(服务篇)。

-- 适用对象 ----------------------------------------------------------------
iWP/Web系统构建基础/WebPlatform/AppFramework
--------------------------------------------------------------------------------


FAQID:296
这篇文章有帮助吗?
0 人中有 0 人觉得有帮助
由 Zendesk 提供技术支持