redisson的问题


dc_app-web-22_1 | 2019-05-28T16:10:41.354016494Z 2019-05-29 00:10:41.353 logback [scheduling-1] ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.
dc_app-web-22_1 | 2019-05-28T16:10:41.354063961Z java.lang.ClassCastException: java.lang.Long cannot be cast to org.redisson.client.protocol.decoder.ListScanResult
dc_app-web-22_1 | 2019-05-28T16:10:41.354070357Z    at org.redisson.RedissonKeys$2.iterator(RedissonKeys.java:127)
dc_app-web-22_1 | 2019-05-28T16:10:41.354075209Z    at org.redisson.RedissonKeys$2.iterator(RedissonKeys.java:123)
dc_app-web-22_1 | 2019-05-28T16:10:41.354083179Z    at org.redisson.BaseIterator.hasNext(BaseIterator.java:54)
dc_app-web-22_1 | 2019-05-28T16:10:41.354087652Z    at org.redisson.misc.CompositeIterator.hasNext(CompositeIterator.java:39)
dc_app-web-22_1 | 2019-05-28T16:10:41.354091787Z    at java.lang.Iterable.forEach(Iterable.java:74)
dc_app-web-22_1 | 2019-05-28T16:10:41.354096102Z    at com.microfinance.market.app.biz.task.ScheduledEventTracking.getEventList(ScheduledEventTracking.java:144)
dc_app-web-22_1 | 2019-05-28T16:10:41.354100181Z    at com.microfinance.market.app.biz.task.ScheduledEventTracking.consumeChannelEvents(ScheduledEventTracking.java:124)
dc_app-web-22_1 | 2019-05-28T16:10:41.354104379Z    at com.microfinance.market.app.biz.task.ScheduledEventTracking.registerConsumeChannelEvents(ScheduledEventTracking.java:91)
dc_app-web-22_1 | 2019-05-28T16:10:41.354108064Z    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
dc_app-web-22_1 | 2019-05-28T16:10:41.354111585Z    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
dc_app-web-22_1 | 2019-05-28T16:10:41.354115049Z    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
dc_app-web-22_1 | 2019-05-28T16:10:41.354125963Z    at java.lang.reflect.Method.invoke(Method.java:498)
dc_app-web-22_1 | 2019-05-28T16:10:41.354128978Z    at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84)
dc_app-web-22_1 | 2019-05-28T16:10:41.354132248Z    at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
dc_app-web-22_1 | 2019-05-28T16:10:41.354134973Z    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
dc_app-web-22_1 | 2019-05-28T16:10:41.354137646Z    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
dc_app-web-22_1 | 2019-05-28T16:10:41.354140490Z    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
dc_app-web-22_1 | 2019-05-28T16:10:41.354145031Z    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
dc_app-web-22_1 | 2019-05-28T16:10:41.354149331Z    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
dc_app-web-22_1 | 2019-05-28T16:10:41.354153511Z    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
dc_app-web-22_1 | 2019-05-28T16:10:41.354157764Z    at java.lang.Thread.run(Thread.java:748)
dc_app-web-22_1 | 2019-05-28T16:10:41.354163953Z 2019-05-29 00:10:41.353 logback [redisson-netty-1-4] WARN  i.n.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
dc_app-web-22_1 | 2019-05-28T16:10:41.354168922Z io.netty.handler.codec.DecoderException: CommandDecoder.decode() must consume the inbound data or change its state if it did not decode anything.
dc_app-web-22_1 | 2019-05-28T16:10:41.354172627Z    at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:379)
dc_app-web-22_1 | 2019-05-28T16:10:41.354175374Z    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278)
dc_app-web-22_1 | 2019-05-28T16:10:41.354178199Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-28T16:10:41.354180888Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-28T16:10:41.354183745Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-28T16:10:41.354186570Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-28T16:10:41.354189642Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-28T16:10:41.354192304Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-28T16:10:41.354195105Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-28T16:10:41.354198081Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-28T16:10:41.354200866Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-28T16:10:41.354207408Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-28T16:10:41.354210231Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-28T16:10:41.354212986Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-28T16:10:41.354215693Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-28T16:10:41.354218471Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-28T16:10:41.354221814Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-28T16:10:41.354224642Z    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
dc_app-web-22_1 | 2019-05-28T16:10:41.354228090Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-28T16:10:41.354232509Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-28T16:10:41.354236405Z    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
dc_app-web-22_1 | 2019-05-28T16:10:41.354240450Z    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
dc_app-web-22_1 | 2019-05-28T16:10:41.354244681Z    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:648)
dc_app-web-22_1 | 2019-05-28T16:10:41.354248873Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:583)
dc_app-web-22_1 | 2019-05-28T16:10:41.354252879Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500)
dc_app-web-22_1 | 2019-05-28T16:10:41.354257136Z    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:462)
dc_app-web-22_1 | 2019-05-28T16:10:41.354261220Z    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:897)
dc_app-web-22_1 | 2019-05-28T16:10:41.354265061Z    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
dc_app-web-22_1 | 2019-05-28T16:10:41.354268934Z    at java.lang.Thread.run(Thread.java:748)

dc_app-web-21_1 | 2019-05-28T15:04:01.864509828Z 2019-05-28 23:04:01.864 logback [scheduling-1] ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.
dc_app-web-21_1 | 2019-05-28T15:04:01.864522784Z java.lang.ClassCastException: null
dc_app-web-21_1 | 2019-05-28T15:04:02.212740719Z 2019-05-28 23:04:02.212 logback [scheduling-1] ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.
dc_app-web-21_1 | 2019-05-28T15:04:02.212775550Z java.lang.ClassCastException: null
dc_app-web-21_1 | 2019-05-28T15:04:02.212780200Z 2019-05-28 23:04:02.212 logback [redisson-netty-1-3] WARN  i.n.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
dc_app-web-21_1 | 2019-05-28T15:04:02.212785052Z io.netty.handler.codec.DecoderException: CommandDecoder.decode() must consume the inbound data or change its state if it did not decode anything.
dc_app-web-21_1 | 2019-05-28T15:04:02.212791539Z    at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:379)
dc_app-web-21_1 | 2019-05-28T15:04:02.212794942Z    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278)
dc_app-web-21_1 | 2019-05-28T15:04:02.212798122Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-21_1 | 2019-05-28T15:04:02.212801181Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-21_1 | 2019-05-28T15:04:02.212813072Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-21_1 | 2019-05-28T15:04:02.212816644Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-21_1 | 2019-05-28T15:04:02.212819773Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-21_1 | 2019-05-28T15:04:02.212822603Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-21_1 | 2019-05-28T15:04:02.212825516Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-21_1 | 2019-05-28T15:04:02.212828302Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-21_1 | 2019-05-28T15:04:02.212831177Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-21_1 | 2019-05-28T15:04:02.212834124Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-21_1 | 2019-05-28T15:04:02.212837979Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-21_1 | 2019-05-28T15:04:02.212840915Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-21_1 | 2019-05-28T15:04:02.212845119Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-21_1 | 2019-05-28T15:04:02.212848013Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-21_1 | 2019-05-28T15:04:02.212850940Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-21_1 | 2019-05-28T15:04:02.212853933Z    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
dc_app-web-21_1 | 2019-05-28T15:04:02.212856847Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-21_1 | 2019-05-28T15:04:02.212859622Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-21_1 | 2019-05-28T15:04:02.212862610Z    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
dc_app-web-21_1 | 2019-05-28T15:04:02.212865403Z    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
dc_app-web-21_1 | 2019-05-28T15:04:02.212868377Z    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:648)
dc_app-web-21_1 | 2019-05-28T15:04:02.212871087Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:583)
dc_app-web-21_1 | 2019-05-28T15:04:02.212874070Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500)
dc_app-web-21_1 | 2019-05-28T15:04:02.212876821Z    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:462)
dc_app-web-21_1 | 2019-05-28T15:04:02.212879573Z    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:897)
dc_app-web-21_1 | 2019-05-28T15:04:02.212882442Z    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
dc_app-web-21_1 | 2019-05-28T15:04:02.212889988Z    at java.lang.Thread.run(Thread.java:748)

dc_app-web-22_1 | 2019-05-29T03:21:34.269751045Z 2019-05-29 11:21:34.269 logback [redisson-netty-1-5] WARN  i.n.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
dc_app-web-22_1 | 2019-05-29T03:21:34.269775301Z io.netty.handler.codec.DecoderException: java.lang.IndexOutOfBoundsException: Index: 18, Size: 18
dc_app-web-22_1 | 2019-05-29T03:21:34.269781319Z    at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:421)
dc_app-web-22_1 | 2019-05-29T03:21:34.269795521Z    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278)
dc_app-web-22_1 | 2019-05-29T03:21:34.269799462Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-29T03:21:34.269803279Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-29T03:21:34.269807414Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-29T03:21:34.269811944Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-29T03:21:34.269815876Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-29T03:21:34.269819996Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-29T03:21:34.269824023Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-29T03:21:34.269828218Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-29T03:21:34.269831820Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-29T03:21:34.269835580Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-29T03:21:34.269839139Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-29T03:21:34.269850738Z    at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
dc_app-web-22_1 | 2019-05-29T03:21:34.269854693Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-29T03:21:34.269858254Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-29T03:21:34.269863242Z    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
dc_app-web-22_1 | 2019-05-29T03:21:34.269867606Z    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
dc_app-web-22_1 | 2019-05-29T03:21:34.269871662Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
dc_app-web-22_1 | 2019-05-29T03:21:34.269875972Z    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
dc_app-web-22_1 | 2019-05-29T03:21:34.269880238Z    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
dc_app-web-22_1 | 2019-05-29T03:21:34.269884545Z    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
dc_app-web-22_1 | 2019-05-29T03:21:34.269888787Z    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:648)
dc_app-web-22_1 | 2019-05-29T03:21:34.269893035Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:583)
dc_app-web-22_1 | 2019-05-29T03:21:34.269896495Z    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500)
dc_app-web-22_1 | 2019-05-29T03:21:34.269900431Z    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:462)
dc_app-web-22_1 | 2019-05-29T03:21:34.269930161Z    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:897)
dc_app-web-22_1 | 2019-05-29T03:21:34.269942137Z    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
dc_app-web-22_1 | 2019-05-29T03:21:34.269947128Z    at java.lang.Thread.run(Thread.java:748)
dc_app-web-22_1 | 2019-05-29T03:21:34.269951320Z Caused by: java.lang.IndexOutOfBoundsException: Index: 18, Size: 18
dc_app-web-22_1 | 2019-05-29T03:21:34.269955532Z    at java.util.LinkedList.checkElementIndex(LinkedList.java:555)
dc_app-web-22_1 | 2019-05-29T03:21:34.269958475Z    at java.util.LinkedList.get(LinkedList.java:476)
dc_app-web-22_1 | 2019-05-29T03:21:34.269961296Z    at org.redisson.client.handler.CommandDecoder.decodeCommandBatch(CommandDecoder.java:219)
dc_app-web-22_1 | 2019-05-29T03:21:34.269964207Z    at org.redisson.client.handler.CommandDecoder.decodeCommand(CommandDecoder.java:140)
dc_app-web-22_1 | 2019-05-29T03:21:34.269966938Z    at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:108)
dc_app-web-22_1 | 2019-05-29T03:21:34.269980618Z    at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:502)
dc_app-web-22_1 | 2019-05-29T03:21:34.269985215Z    at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:366)
dc_app-web-22_1 | 2019-05-29T03:21:34.269989592Z    ... 28 common frames omitted

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Redisson是一个基于Redis的Java驻留内存数据网格(In-Memory Data Grid)和分布式锁框架。在使用Redisson时,可能会遇到死锁问题。 死锁是指两个或多个线程在互相等待对方释放资源的情况下无限期地阻塞的现象。在Redisson中,死锁问题通常发生在分布式锁的使用过程中。 造成Redisson死锁问题的原因可能有以下几点: 1. 程序逻辑错误:在使用分布式锁时,如果程序逻辑不正确,可能会导致死锁。例如,一个线程获取了锁但没有释放,导致其他线程无法获取锁而陷入死锁状态。 2. 锁超时设置不合理:在使用Redisson分布式锁时,可以设置锁的超时时间。如果超时时间设置过长,可能会导致其他线程长时间等待而出现死锁。 3. 高并发场景下的竞争:在高并发场景下,多个线程同时请求获取锁,可能会导致竞争激烈,从而增加了死锁的风险。 为了避免Redisson死锁问题,可以采取以下措施: 1. 合理设计程序逻辑:确保在获取锁后及时释放锁,避免出现死锁情况。 2. 设置合理的锁超时时间:根据实际业务需求,设置适当的锁超时时间,避免长时间等待而导致死锁。 3. 使用可重入锁:Redisson提供了可重入锁(ReentrantLock)的实现,可以避免同一个线程重复获取锁而导致死锁。 4. 使用RedLock算法:RedLock是Redisson提供的一种分布式锁算法,可以在多个Redis节点之间协作,提高分布式锁的可靠性和安全性。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值