xuxueli / xxl-job

A distributed task scheduling framework.(分布式任务调度平台XXL-JOB)
http://www.xuxueli.com/xxl-job/
GNU General Public License v3.0
27.46k stars 10.86k forks source link

failed to create a child event loop #893

Closed fengjee closed 5 years ago

fengjee commented 5 years ago

在2.0.2版本中调度中心遇到问题,打开的句柄过多, 查看系统句柄如下: [root@yjdsj8-yjfbzx-wangbo ~]# lsof -p 29438| wc -l 8139 日志如下: 17:30:47.969 logback [xxl-job, admin JobTriggerPoolHelper-fastTriggerPool-52799539] INFO c.x.r.r.i.r.XxlRpcReferenceBean - >>>>>>>>>>> xxl-rpc, invoke error, address:10.230.122.91:9999, XxlRpcRequestXxlRpcRequest{requestId='b731c1b7-2b50-4830-84dd-0a2c018228b4', createMillisTime=1558949445765, accessToken='', className='com.xxl.job.core.biz.ExecutorBiz', methodName='run', parameterTypes=[class com.xxl.job.core.biz.model.TriggerParam], parameters=[TriggerParam{jobId=101, executorHandler='cimissSurfChnMulHorForRainJobHandler', executorParams='SURF_CHN_MULHOR', executorBlockStrategy='SERIAL_EXECUTION', executorTimeout=1800, logId=4514, logDateTim=1558949445748, glueType='BEAN', glueSource='', glueUpdatetime=1558602102000, broadcastIndex=0, broadcastTotal=1}], version='null'} 17:30:47.970 logback [xxl-job, admin JobTriggerPoolHelper-fastTriggerPool-52799539] ERROR c.x.j.a.core.trigger.XxlJobTrigger - >>>>>>>>>>> xxl-job trigger error, please check if the executor[10.230.122.91:9999] is running. com.xxl.rpc.util.XxlRpcException: java.lang.IllegalStateException: failed to create a child event loop at com.xxl.rpc.remoting.invoker.reference.XxlRpcReferenceBean$1.invoke(XxlRpcReferenceBean.java:227) at com.sun.proxy.$Proxy81.run(Unknown Source) at com.xxl.job.admin.core.trigger.XxlJobTrigger.runExecutor(XxlJobTrigger.java:196) at com.xxl.job.admin.core.trigger.XxlJobTrigger.processTrigger(XxlJobTrigger.java:149) at com.xxl.job.admin.core.trigger.XxlJobTrigger.trigger(XxlJobTrigger.java:74) at com.xxl.job.admin.core.thread.JobTriggerPoolHelper$3.run(JobTriggerPoolHelper.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.IllegalStateException: failed to create a child event loop at io.netty.util.concurrent.MultithreadEventExecutorGroup.(MultithreadEventExecutorGroup.java:88) at io.netty.util.concurrent.MultithreadEventExecutorGroup.(MultithreadEventExecutorGroup.java:58) at io.netty.channel.MultithreadEventLoopGroup.(MultithreadEventLoopGroup.java:52) at io.netty.channel.nio.NioEventLoopGroup.(NioEventLoopGroup.java:87) at io.netty.channel.nio.NioEventLoopGroup.(NioEventLoopGroup.java:82) at io.netty.channel.nio.NioEventLoopGroup.(NioEventLoopGroup.java:63) at io.netty.channel.nio.NioEventLoopGroup.(NioEventLoopGroup.java:51) at io.netty.channel.nio.NioEventLoopGroup.(NioEventLoopGroup.java:43) at com.xxl.rpc.remoting.net.impl.netty_http.client.NettyHttpConnectClient.init(NettyHttpConnectClient.java:48) at com.xxl.rpc.remoting.net.common.ConnectClient.getPool(ConnectClient.java:110) at com.xxl.rpc.remoting.net.common.ConnectClient.asyncSend(ConnectClient.java:41) at com.xxl.rpc.remoting.net.impl.netty_http.client.NettyHttpClient.asyncSend(NettyHttpClient.java:18) at com.xxl.rpc.remoting.invoker.reference.XxlRpcReferenceBean$1.invoke(XxlRpcReferenceBean.java:216) ... 8 common frames omitted Caused by: io.netty.channel.ChannelException: failed to open a new selector at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:169) at io.netty.channel.nio.NioEventLoop.(NioEventLoop.java:143) at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:127) at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:36) at io.netty.util.concurrent.MultithreadEventExecutorGroup.(MultithreadEventExecutorGroup.java:84) ... 20 common frames omitted Caused by: java.io.IOException: 打开的文件过多 at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method) at sun.nio.ch.EPollArrayWrapper.(EPollArrayWrapper.java:130) at sun.nio.ch.EPollSelectorImpl.(EPollSelectorImpl.java:69) at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36) at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:167) ... 24 common frames omitted

xuxueli commented 5 years ago

你好,这个问题在 2.1.0 已经做了优化,可以升级体验下。或者临时升级一下 xxl-rpc 版本也可以。

fengjee commented 5 years ago

谢谢雪里大神

SunKaedes commented 5 years ago

我也遇到这个问题了,想问下升级2.1.0需要注意什么吗?