此现象的日志因以下理由输出到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
大量输出goes into the waiting for execution: 5 in queue日志。