java - 为什么 JLupin 存储队列无法访问任务?
问题描述
我在使用 JLupin 存储队列时遇到了问题。完成后检索任务时出现问题。JLupin 配置在 2 个集群上,每个集群 3 台服务器。Jlupin QueueMicroservice 安装在每个节点上。先感谢您。
2019-02-11 11:31:33,403 | Error | pool-4-thread-483 | | com.jlupin.impl.processor.strategy.impl.JLupinDefaultServiceProcessorInvokeStrategyImpl | MESSAGE ID:1 SESSION ID:8559396366643622404 REQUEST ID:5589808491859060249 METHOD:invoke LINE:136 LOG:an error in JLupinDefaultServiceProcessorImpl occurred caused by:
java.lang.NullPointerException: null
2019-02-11 11:31:33,409 | Error | pool-4-thread-483 | | com.jlupin.impl.entrypoint.microservice.queue.JLupinQueueMicroserviceEntryPointImpl$3 | MESSAGE ID:5 METHOD:call LINE:681 LOG:an error occurred during executing task described by session id:8559396366643622404 and request id:5589808491859060249 caused by:
com.jlupin.interfaces.client.delegator.exception.JLupinDelegatorException: an unexpected error occurred during communication caused by:
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.doPutTaskResultCommunicationSequence(JLupinQueueLoadBalancerDelegatorImpl.java:738) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.access$3200(JLupinQueueLoadBalancerDelegatorImpl.java:32) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl$10.call(JLupinQueueLoadBalancerDelegatorImpl.java:640) ~[?:?]
at com.jlupin.impl.client.delegator.helper.repeater.JLupinQueueLoadBalancerDelegatorRepeaterHelper.doWithRepeat(JLupinQueueLoadBalancerDelegatorRepeaterHelper.java:36) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.doPutTaskResultCommunicationWrappedSequence(JLupinQueueLoadBalancerDelegatorImpl.java:637) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.delegate(JLupinQueueLoadBalancerDelegatorImpl.java:79) ~[?:?]
at com.jlupin.impl.entrypoint.microservice.queue.JLupinQueueMicroserviceEntryPointImpl$3.call(JLupinQueueMicroserviceEntryPointImpl.java:672) [?:?]
at com.jlupin.impl.entrypoint.microservice.queue.JLupinQueueMicroserviceEntryPointImpl$3.call(JLupinQueueMicroserviceEntryPointImpl.java:629) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_161]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_161]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_161]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
Caused by: com.jlupin.interfaces.balancer.exception.JLupinLoadBalancerException: balancer type:INNER_MICROSERVICE can not send request for repeats amount:4 to any servers caused by:
at com.jlupin.impl.balancer.ext.impl.repeat.JLupinAbstractRepeatLoadBalancer.executeBalanceCommunication(JLupinAbstractRepeatLoadBalancer.java:65) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.doPutTaskResultCommunicationSequence(JLupinQueueLoadBalancerDelegatorImpl.java:649) ~[?:?]
... 11 more
Caused by: com.jlupin.impl.client.delegator.exception.JLupinDelegatorWithPossibleRepeatException: an unexpected error (with possible to repeat) occurred during during executing doPutTaskResultCommunicationSequence function described by session id:8559396366643622404 and request id:5589808491859060249 caused by:
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl$11.doCommunication(JLupinQueueLoadBalancerDelegatorImpl.java:723) ~[?:?]
at com.jlupin.impl.balancer.base.JLupinBaseLoadBalancer.executeBalanceCommunicationInternal(JLupinBaseLoadBalancer.java:619) ~[?:?]
at com.jlupin.impl.balancer.ext.impl.repeat.JLupinAbstractRepeatLoadBalancer.executeBalanceCommunication(JLupinAbstractRepeatLoadBalancer.java:38) ~[?:?]
at com.jlupin.impl.client.delegator.balance.JLupinQueueLoadBalancerDelegatorImpl.doPutTaskResultCommunicationSequence(JLupinQueueLoadBalancerDelegatorImpl.java:649) ~[?:?]
... 11 more
Caused by: com.jlupin.impl.client.delegator.exception.JLupinDelegatorWithPossibleRepeatException: an error occurred during executing doPutTaskResultCommunicationSequence caused by:com.jlupin.interfaces.microservice.partofjlupin.asynchronous.service.queue.exception.JLupinQueueManagerServiceException: an error occurred during saving task:BOSGW-APB01{$}SIA_LOG{$}1{$}7164689466323701{$}816cf1fd-9e51-4227-a66e-8e0ff911fbaf8974513202941020_DISK result caused by:
at com.jlupin.impl.microservice.partofjlupin.asynchronous.service.impl.queue.JLupinDefaultQueueManagerServiceImpl.putTaskResultAsException(JLupinDefaultQueueManagerServiceImpl.java:200)
at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.jlupin.impl.util.JLupinUtil.invokeMethod(JLupinUtil.java:215)
at com.jlupin.impl.processor.strategy.impl.JLupinDefaultServiceProcessorInvokeStrategyImpl.invoke(JLupinDefaultServiceProcessorInvokeStrategyImpl.java:126)
at com.jlupin.impl.processor.JLupinDefaultServiceProcessorImpl.invoke(JLupinDefaultServiceProcessorImpl.java:51)
at com.jlupin.impl.entrypoint.microservice.queue.JLupinQueueMicroserviceEntryPointImpl.doPutTaskResultCommunicationSequence(JLupinQueueMicroserviceEntryPointImpl.java:827)
at com.jlupin.impl.entrypoint.microservice.queue.JLupinQueueMicroserviceEntryPointImpl.doEntry(JLupinQueueMicroserviceEntryPointImpl.java:184)
at com.jlupin.impl.server.jnative.defaults.strategy.service.base.JLupinBaseAbstractServiceStrategy$ThreadCallable.call(JLupinBaseAbstractServiceStrategy.java:204)
at com.jlupin.impl.server.jnative.defaults.strategy.service.base.JLupinBaseAbstractServiceStrategy$ThreadCallable.call(JLupinBaseAbstractServiceStrategy.java:185)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
解决方案
您可能没有为您的 queueMicroservice 实例配置共享磁盘。默认情况下,“平台/存储”用作存储队列数据的位置。查看 JLupin 的文档以获取有关使用磁盘存储实现配置队列的更多详细信息。
https://jlupin.io/documentation/jlupin-reactive-queues-16/page/storage-jlupin_disk.html
推荐阅读
- powershell - 处理 powershell 数组中的项目 - 多个项目
- python - 删除所有键后大 python 字典的内存占用
- swiftui - WKWebView 自定义链接可在 SwiftUI 中打开 WhatsApp 等应用
- java - Java 相当于 Scala 的未来?
- python - Python Selenium - 有什么方法可以在这个文本框中发送文本?
- python - 重命名包含子字符串的列 - Pandas
- python - Cmd 提示符执行不带 py 的代码,但忽略命令行参数(自动化无聊的东西)
- c++ - 无法在 OS X Big Sur 上编译 c++,“ld: library not found for -lgcc_s.10.4”
- c - 消息队列 - 服务器只响应一种类型的消息
- c# - 服务器端数据表搜索为字符串项返回 NULL