Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Netty 春云网关-拦阻猎犬:拦阻呼叫!太阳杂项不安全#公园_Netty_Spring Webflux_Project Reactor_Spring Cloud Gateway - Fatal编程技术网

Netty 春云网关-拦阻猎犬:拦阻呼叫!太阳杂项不安全#公园

Netty 春云网关-拦阻猎犬:拦阻呼叫!太阳杂项不安全#公园,netty,spring-webflux,project-reactor,spring-cloud-gateway,Netty,Spring Webflux,Project Reactor,Spring Cloud Gateway,在SpringCloudGateway应用程序中,当执行PST时,始终观察到高CPU使用率。因此,添加了“BlockHound”作为依赖项,并在启动类中调用了“BlockHound.install();”。可以在日志文件中看到下面的内容。你能告诉我可能是什么问题吗- [2020-08-19 06:00:40,513] [a3a515474c55dfd9] [163167] [reactor-http-epoll-2] [ERROR] [o.s.b.a.w.r.e.AbstractErrorWeb

在SpringCloudGateway应用程序中,当执行PST时,始终观察到高CPU使用率。因此,添加了“BlockHound”作为依赖项,并在启动类中调用了“BlockHound.install();”。可以在日志文件中看到下面的内容。你能告诉我可能是什么问题吗-

[2020-08-19 06:00:40,513] [a3a515474c55dfd9] [163167] [reactor-http-epoll-2] [ERROR] [o.s.b.a.w.r.e.AbstractErrorWebExceptionHandler] - [1cca0fbe-26272]  500 Server Err
or for HTTP POST "/lmp/data/msg"
reactor.blockhound.BlockingOperationError: Blocking call! sun.misc.Unsafe#park
        at sun.misc.Unsafe.park(Unsafe.java)
        Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
        |_ checkpoint ⇢ org.springframework.security.web.server.savedrequest.ServerRequestCacheWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.context.SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.cloud.sleuth.instrument.web.TraceWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ HTTP POST "/lmp/data/msg" [ExceptionHandlingWebHandler]
Stack trace:
                at sun.misc.Unsafe.park(Unsafe.java)
                at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
                at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
                at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
                at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
                at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
                at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
                at java.util.concurrent.PriorityBlockingQueue.offer(PriorityBlockingQueue.java:481)
                at java.util.concurrent.PriorityBlockingQueue.add(PriorityBlockingQueue.java:463)
                at reactor.core.scheduler.BoundedElasticScheduler$BoundedServices.pick(BoundedElasticScheduler.java:398)
                at reactor.core.scheduler.BoundedElasticScheduler.createWorker(BoundedElasticScheduler.java:319)
                at reactor.core.scheduler.Schedulers$CachedScheduler.createWorker(Schedulers.java:1090)
                at reactor.core.publisher.MonoSubscribeOn.subscribeOrReturn(MonoSubscribeOn.java:48)
                at reactor.core.publisher.Mono.subscribe(Mono.java:4198)
                at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:75)
                at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onComplete(ScopePassingSpanSubscriber.java:104)
                at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:96)
                at org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onComplete(ScopePassingSpanSubscriber.java:104)
                at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:359)
下面是技术堆栈-

SpringCloudGateway-Hoxton.RELEASE
弹簧靴-2.2.1.释放
OpenJDK1.8

其他依赖项包括

io.projectreactor.tools:blockhound:1.0.4.RELEASE
org.springframework.boot:spring-boot-starter-actuator  
org.springframework.boot:spring-boot-starter-data-redis  
org.springframework.cloud:spring-cloud-starter-sleuth  
io.micrometer:micrometer-registry-prometheus:1.3.3
  
以下是RHEL规范

体系结构:x86_64
CPU操作模式:32位、64位
CPU:4个
在线CPU列表:0-3
每个核心的线程数:1个
每个插座的芯:1个
插座:4个

下面是JVM参数

-Xms512m-Xmx1024m-XX:+UseConcMarkSweepGC-XX:+UseParNewGC-XX:+CmsParallerMarkedEnabled-XX:CmsiniatingOccinecyFraction=60-XX:+UseCmsiniatingOccinecyYonly-XX:+DisableExplicitingC-XX:+PrintGCDetails-XX:+PrintGCDateStamps-XX:+PrintGCTimeStamps-XX:+UseLogFileRotation-XX:NumberOfGCLogFiles=10-XX:GCLogFileSize=10240K-Xloggc:/appl/xxx/xxx/logs/gc.log0814_0440-详细说明:gc-XX:+heapdumponautofmemoryerror-XX:HeapDumpPath=/appl/xxx/xxx/logs-XX:+PrintStringTableStatistics-Djava.security.egd=file:///dev/./urandom -Dreactor.netty.http.server.accessLogEnabled=true-Dio.netty.leakDetection.level=advanced

在删除“spring boot actuator*”依赖项之后,我现在开始了解以下内容-

reactor.blockhound.BlockingOperationError: Blocking call! java.lang.Object#wait
        at java.lang.Object.wait(Object.java)
        Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
        |_ checkpoint ⇢ org.springframework.web.cors.reactive.CorsWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.authorization.AuthorizationWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.authentication.logout.LogoutWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.savedrequest.ServerRequestCacheWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.context.SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]
        |_ checkpoint ⇢ org.springframework.cloud.sleuth.instrument.web.TraceWebFilter [DefaultWebFilterChain]
        |_ checkpoint ⇢ HTTP POST "/lmp/data/msg" [ExceptionHandlingWebHandler]
Stack trace:
                at java.lang.Object.wait(Object.java)
                at java.lang.Object.wait(Object.java:502)
                at java.net.InetAddress.checkLookupTable(InetAddress.java:1372)
                at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1289)
                at java.net.InetAddress.getAllByName0(InetAddress.java:1255)
                at java.net.InetAddress.getAllByName(InetAddress.java:1171)
                at java.net.InetAddress.getAllByName(InetAddress.java:1105)
                at java.net.InetAddress.getByName(InetAddress.java:1055)
                at io.netty.util.internal.SocketUtils$8.run(SocketUtils.java:156)
                at io.netty.util.internal.SocketUtils$8.run(SocketUtils.java:153)
                at java.security.AccessController.doPrivileged(Native Method)
                at io.netty.util.internal.SocketUtils.addressByName(SocketUtils.java:153)
                at io.netty.resolver.DefaultNameResolver.doResolve(DefaultNameResolver.java:41)
                at io.netty.resolver.SimpleNameResolver.resolve(SimpleNameResolver.java:61)
                at io.netty.resolver.SimpleNameResolver.resolve(SimpleNameResolver.java:53)
                at io.netty.resolver.InetSocketAddressResolver.doResolve(InetSocketAddressResolver.java:55)
                at io.netty.resolver.InetSocketAddressResolver.doResolve(InetSocketAddressResolver.java:31)
                at io.netty.resolver.AbstractAddressResolver.resolve(AbstractAddressResolver.java:106)

我们看不到您的源代码,但是在您的第一个堆栈跟踪中,它正在等待一些东西。我们看不到您的源代码,但是在您的第一个堆栈跟踪中,它正在等待一些东西