SpringCloudZooKeeper集成Feign的坑2,服务调⽤了⼀次后第⼆次调⽤就。。。
错误如下:
2017-09-19 15:05:24.659  INFO 9986 --- [          main] s.c.a.AnnotationConfigApplicationContext : Refreshing t.annotation.AnnotationConfigApplicationContext@56528192: startup date [Tue Sep 19 15:05:24 CST 2017 2017-09-19 15:05:24.858  INFO 9986 --- [          main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2017-09-19 15:05:24.892  INFO 9986 --- [          main] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAuto .  ____          _            __ _ _
/\ / ' __ _ () __  __ _ \ \ \
( ( )__ | '_ | '| | ' / ` | \ \ \
\/  )| |)| | | | | || (| |  ) ) ) )
'  || .__|| ||| |_, | / / / /
=========||==============|/=////
:: Spring Boot ::        (v1.5.7.RELEASE)
2017-09-19 15:05:25.100  INFO 9986 --- [          main] st.SampleZookeeperApplication    : No active profile set, falling back to default profiles: default
2017-09-19 15:05:25.109  INFO 9986 --- [          main] ationConfigEmbeddedWebApplicationContext : Refreshing org.t.embedded.AnnotationConfigEmbeddedWebApplicationContext@3adcc812: startup date [Tue Sep 2017-09-19 15:05:25.491  INFO 9986 --- [          main] o.t.scope.GenericScope    : BeanFactory id=95f3ba5c-e0d1-3851-8586-45eb4a5d5e3f
2017-09-19 15:05:25.505  INFO 9986 --- [          main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2017-09-19 15:05:25.522  INFO 9986 --- [          main] trationDelegate$BeanPostProcessorChecker : Bean 'st.SampleZookeeperApplication$AppClient' of type [org.springframew
ork.cloudflix.feign.FeignClientFactory 2017-09-19 15:05:25.544  INFO 9986 --- [          main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfi 2017-09-19 15:05:25.808  INFO 9986 --- [          main] TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2017-09-19 15:05:25.817  INFO 9986 --- [          main] o.StandardService  : Starting service [Tomcat]
2017-09-19 15:05:25.818  INFO 9986 --- [          main] org.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.20
2017-09-19 15:05:25.893  INFO 9986 --- [ost-startStop-1] C.[Tomcat].[localhost].[/]      : Initializing Spring embedded WebApplicationContext
2017-09-19 15:05:25.893  INFO 9986 --- [ost-startStop-1] o.t.ContextLoader            : Root WebApplicationContext: initialization completed in 784 ms
2017-09-19 15:05:25.969  INFO 9986 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2017-09-19 15:05:25.972  INFO 9986 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean  : Mapping filter: 'characterEncodingFilter' to: [/]
2017-09-19 15:05:25.972  INFO 9986 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean  : Mapping filter: 'hiddenHttpMethodFilter' to: [/]
2017-09-19 15:05:25.972  INFO 9986 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean  : Mapping filter: 'httpPutFormContentFilter' to: [/]
2017-09-19 15:05:25.972  INFO 9986 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean  : Mapping filter: 'requestContextFilter' to: [/]
2017-09-19 15:05:26.044  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.045  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.045  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties
contains validation constraints but had not 2017-09-19 15:05:26.093  INFO 9986 --- [          main] f.imps.CuratorFrameworkImpl        : Starting
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:host.name=jim-ubuntu-pc
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:java.version=1.8.0_144
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:java.vendor=Oracle Corporation
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:java.home=/usr/lib/jvm/java-8-oracle/jre
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:java.class.path=/home/jim/eclipse-workspace/test/target/classes:/home/jim/.m2/repository/
org/springframework/cloud/spring-clo 2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:pdir=/tmp
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:javapiler=<NA>
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:os.name=Linux
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:os.arch=amd64
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:os.version=4.7.0.intel.r5.0
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client
environment:user.name=jim
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:user.home=/home/jim
2017-09-19 15:05:26.098  INFO 9986 --- [          main] keeper.ZooKeeper          : Client environment:user.dir=/home/jim/eclipse-workspace/test
2017-09-19 15:05:26.099  INFO 9986 --- [          main] keeper.ZooKeeper          : Initiating client connection, connectString=localhost:2181 sessionTimeout=60000 watcher=org.apache.curator.ConnectionState@43826ec
2017-09-19 15:05:26.110  INFO 9986 --- [localhost:2181)] keeper.ClientCnxn          : Opening socket connection to server ip6-localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to authenticate using SASL (unknown error)
springcloud怎么读音2017-09-19 15:05:26.113  INFO 9986 --- [localhost:2181)] keeper.ClientCnxn          : Socket connection established to ip6-localhost/0:0:0:0:0:0:0:1:2181, initiating session
2017-09-19 15:05:26.138  INFO 9986 --- [localhost:2181)] keeper.ClientCnxn          : S
ession establishment complete on server ip6-localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x15e98c6d1b30005, negotiated timeout = 40000 2017-09-19 15:05:26.148  INFO 9986 --- [ain-EventThread] f.state.ConnectionStateManager    : State change: CONNECTED
2017-09-19 15:05:26.320  INFO 9986 --- [          main] s.c.a.AnnotationConfigApplicationContext : Refreshing t.annotation.AnnotationConfigApplicationContext@1cb37ee4: startup date [Tue Sep 19 15:05:26 CST 2017 2017-09-19 15:05:26.333  INFO 9986 --- [          main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2017-09-19 15:05:26.580  INFO 9986 --- [          main] s.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.t.embedded.AnnotationConfigEmbeddedWebApplicationContext@3adcc812: s 2017-09-19 15:05:26.621  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto public org.springframework.cloud.client.ServiceInstance st.SampleZookeeperApplication.lb() 2017-09-19 15:05:26.622  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/myenv]}" onto public java.lang.String v(java.lang.String)
2017-09-19 15:05:26.622  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/hi]}" onto public java.lang.String st.SampleZookeeperApplication.hi()
2017-09-19 15:05:26.622  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/self]}" onto public java.lang.String st.SampleZookeeperApplication.self()
2017-09-19 15:05:26.624  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.w 2017-09-19 15:05:26.624  INFO 9986 --- [          main] s.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframewo
2017-09-19 15:05:26.661  INFO 9986 --- [          main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/] onto handler of type [class org.springframework.source.ResourceHttpRequestHandler]
2017-09-19 15:05:26.661  INFO 9986 --- [          main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/] onto handler of type [class org.springframework.source.ResourceHttpRequestHandler]
2017-09-19 15:05:26.686  INFO 9986 --- [          main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.source.ResourceHttpRequestHandler]
2017-09-19 15:05:26.781  WARN 9986 --- [          main] a.ArchaiusAutoConfiguration      : No spring.application.name found, defaulting to 'application'
2017-09-19 15:05:26.784  WARN 9986 --- [          main] sources.URLConfigurationSource    : No URLs will be polled as dynamic configuration sources.
2017-09-19 15:05:26.784  INFO 9986 --- [          main] sources.URLConfigurationSource    : To enable URLs as dynamic configuration sources, define System figurationSource.additionalUrls or make config.properties 2017-09-19 15:05:26.788  WARN 9986 --- [          main] sources.URLConfigurationSource    : No URLs will be polled as dynamic configuration sources.
2017-09-19 15:05:26.788  INFO 9986 --- [          main] sources.URLConfigurationSource    : To enable URLs as dynamic configuration sources, define System figurationSource.additionalUrls or make config.properties 2017-09-19 15:05:26.829  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2017-09-19 15:05:26.834  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Bean with name 'configurationPropertiesRebinder' has been autodetected for JMX exposure
2017-09-19 15:05:26.835  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Bean with name 'environmentManager' has been autodetected for JMX exposure
2017-09-19 15:05:26.835  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Bean with name 'refreshScope' has been autodetected for JMX exposure
2017-09-19 15:05:26.838  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Located managed bean 'environmentManager': registering with JMX server as MBean [org.t.environment:name=enviro 2017-09-19 15:05:26.848  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Located managed bean 'refreshScope': registe
ring with JMX server as MBean [org.fresh:name=refreshScop 2017-09-19 15:05:26.854  INFO 9986 --- [          main] o.a.AnnotationMBeanExporter        : Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.t.properties:nam 2017-09-19 15:05:26.888  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.889  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.889  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.892  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.892  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : The @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.892  WARN 9986 --- [          main] figurationPropertiesBindingPostProcessor : Th
e @ConfigurationProperties bean class org.keeper.ZookeeperProperties contains validation constraints but had not 2017-09-19 15:05:26.907  INFO 9986 --- [          main] support.DefaultLifecycleProcessor  : Starting beans in phase 0
2017-09-19 15:05:26.937  INFO 9986 --- [          main] TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2017-09-19 15:05:27.078  INFO 9986 --- [          main] st.SampleZookeeperApplication    : Started SampleZookeeperApplication in 2.669 seconds (JVM running for 2.875)
2017-09-19 15:05:32.533  INFO 9986 --- [nio-8080-exec-1] C.[Tomcat].[localhost].[/]      : Initializing Spring FrameworkServlet 'dispatcherServlet'
2017-09-19 15:05:32.533  INFO 9986 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2017-09-19 15:05:32.540  INFO 9986 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 7 ms
2017-09-19 15:05:32.653  INFO 9986 --- [tZookeeperApp-1] s.c.a.AnnotationConfigApplicationContext :
Refreshing t.annotation.AnnotationConfigApplicationContext@b18c7ff: startup date [Tue Sep 19 15:05:32 CST 20 2017-09-19 15:05:32.697  INFO 9986 --- [tZookeeperApp-1] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2017-09-19 15:05:32.792  INFO 9986 --- [tZookeeperApp-1] fig.ChainedDynamicProperty  : Flipping property: testZookeeperApp.ribbon.ActiveConnectionsLimit to use NEXT property: niws.loadbalancer.availabilityFilteringRule.activeCo 2017-09-19 15:05:32.804  INFO 9986 --- [tZookeeperApp-1] c.urrent.ShutdownEnabledTimer    : Shutdown hook installed for: NFLoadBalancer-PingTimer-testZookeeperApp
2017-09-19 15:05:32.812  INFO 9986 --- [tZookeeperApp-1] cflix.loadbalancer.BaseLoadBalancer  : Client:testZookeeperApp instantiated a LoadBalancer:DynamicServerListLoadBalancer:{NFLoadBalancer:name=testZookeeperApp,current list 2017-09-19 15:05:32.816  INFO 9986 --- [tZookeeperApp-1] c.n.l.DynamicServerListLoadBalancer      : Using serverListUpdater PollingServerListUpdater
2017-09-19 15:05:32.818  INFO 9986 --- [tZookeeperApp-1] c.n.l.DynamicServerListLoadBalancer      :
DynamicServerListLoadBalancer for client testZookeeperApp initialized: DynamicServerListLoadBalancer:{NFLoadBalancer:name=testZookee 2017-09-19 15:05:33.042 ERROR 9986 --- [nio-8080-exec-1] C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is comflix.
comflix.client.ClientException: Load balancer does not have available server for client: testZookeeperApp
at comflix.ServerFromLoadBalancer(LoadBalancerContext.java:468) ~[ribbon-loadbalancer-2.2.0.jar:2.2.0]
at active.LoadBalancerCommand$1.call(LoadBalancerCommand.java:184) ~[ribbon-loadbalancer-2.2.0.jar:2.2.0]
at active.LoadBalancerCommand$1.call(LoadBalancerCommand.java:180) ~[ribbon-loadbalancer-2.2.0.jar:2.2.0]
at rx.Observable.unsafeSubscribe(Observable.java:10211) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeConcatMap.call(OnSubscribeConcatMap.java:94) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeConcatMap.call(OnSubscribeConcatMap.java:42) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.unsafeSubscribe(Observable.java:10211) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OperatorRetryWithPredicate$SourceSubscriber$1.call(OperatorRetryWithPredicate.java:127) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.schedulers.queue(TrampolineScheduler.java:73) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.schedulers.TrampolineScheduler$InnerCurrentThreadScheduler.schedule(TrampolineScheduler.java:52) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.Next(OperatorRetryWithPredicate.java:79) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.Next(OperatorRetryWithPredicate.java:45) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.util.quest(ScalarSynchronousObservable.java:276) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Subscriber.setProducer(Subscriber.java:209) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.util.ScalarSynchronousObservable$JustOnSubscribe.call(ScalarSynchronousObservable.java:138) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.util.ScalarSynchronousObservable$JustOnSubscribe.call(ScalarSynchronousObservable.
java:129) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.subscribe(Observable.java:10307) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.subscribe(Observable.java:10274) ~[rxjava-1.1.10.jar:1.1.10]
at rx.observables.BlockingObservable.blockForSingle(BlockingObservable.java:445) ~[rxjava-1.1.10.jar:1.1.10]
at rx.observables.BlockingObservable.single(BlockingObservable.java:342) ~[rxjava-1.1.10.jar:1.1.10]
at comflix.uteWithLoadBalancer(AbstractLoadBalancerAwareClient.java:102) ~[ribbon-loadbalancer-2.2.0.jar:2.2.0]
at org.springframework.cloudflix.feign.ute(LoadBalancerFeignClient.java:63) ~[spring-cloud-netflix-core-1.2.7.RELEASE.jar:1.2.7.RELEASE]
at uteAndDecode(SynchronousMethodHandler.java:97) ~[feign-core-9.3.1.jar:na]
at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:76) ~[feign-core-9.3.1.jar:na]
at feign.hystrix.HystrixInvocationHandler$1.run(HystrixInvocationHandler.java:108) ~[feign-hystrix-9.3.1.jar:na]
at comflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:301) ~[hystrix-core-1.5.6.jar:1.5.6]
at comflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:297) ~[hystrix-core-1.5.6.jar:1.5.6]
at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:46) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:35) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.unsafeSubscribe(Observable.java:10211) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:51) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:35) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.unsafeSubscribe(Observable.java:10211) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeDoOnEach.call(OnSubscribeDoOnEach.java:41) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeDoOnEach.call(OnSubscribeDoOnEach.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) ~[rxjava-1.1.10.jar:1.1.10]
at rx.Observable.unsafeSubscribe(Observable.java:10211) ~[rxjava-1.1.10.jar:1.1.10]
at rx.internal.operators.OperatorSubscribeOn$1.call(OperatorSubscribeOn.java:94) ~[rxjava-1.1.10.jar:1.1.10]
at comflix.urrency.HystrixContexSchedulerAction$1.call(HystrixContexSchedulerAction.java:56) ~[hystrix-core-1.5.6.jar:1.5.6]
at comflix.urrency.HystrixContexSchedulerAction$1.call(HystrixContexSchedulerAction.java:47) ~[hystrix-core-1.5.6.jar:1.5.6]
at comflix.urrency.HystrixContexSchedulerAction.call(HystrixContexSchedulerAction.java:69) ~[hystrix-core-1.5.6.jar:1.5.6]
at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:55) ~[rxjava-1.1.10.jar:1.1.10]
at urrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_144]
at urrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_144]
at urrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_144]
at urrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_144]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_144]
错误现象:
1、服务调⽤了⼀次后第⼆次调⽤就变成了500
2、或者调⽤的服务直接出现500。错误同样是出现以上信息。
问题排查:
1、排查Spring Cloud的版本问题:Camden.SR7,与这个⽆关。
2、排查Feign的接⼝写法问题,也与这个⽆关。
3、排查引⼊的包少了,真的是这个问题。
4、排查配置问题的类型,peoperties与yaml,或者application.peoperties与bootstrap.properties,也与这个⽆关。
5、排查ZK的版本问题,同样也是⽆关。
6、排查连接到ZK的root路径和服务的名称和路径,同样也是⽆关。
7、排查在application.properties使⽤了keeper.dependencies.,然后注释掉之后⼀切正常,⽆论在yaml还是bootstrap.yaml⽂件写的都同样的错误,问题发现就是这个问题。这个是业务需要
使⽤,在应⽤名指定了⽤斜杠的名就必须使⽤这个属性指定,所以不能去掉。
问题说明:
1、关于keeper.dependencies.
引⼊org.springframework.cloud:spring-cloud-starter-zookeeper-discovery就可以⾃动配置Spring Cloud Zookeeper相关依赖;
可以配置keeper.dependencies来加⼊更多配置;
可以设置abled为false,关闭⾃动依赖(默认true)
为什么要⽤这个去指定,如果在指定spring.application.name时有路径斜杠,那么就必须使⽤这个做为别名来进⾏引⼊。
问题解决:
1、检查@FeignClient(value = "service-zookeeper")的写法,上⾯value如果有写keeper.dependencies.service-zookeeper.path时,是指向这个,如果没有写就是服务的名称(spring.application.name=service-zookeeper)。
2、如果发现有上⾯的错误,那么第⼀时间先去配置⽂件上屏蔽keeper.dependencies.进⾏排查。
3、真正解决本次的问题,在POM引⼊spring-boot-starter-actuator:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
说明:这个包是⽤做健康度监控的。
总结:
其实官⽅⽂档也是有坑的,可能从⼀开始发展到现在,⽂档有些遗漏导致⼀些包引⼊没说清除,甚⾄官⽅的⽰例代码上也没说明,导致上⾯的问题出现。最终解决的⽅法就是去GitHub使⽤了这个依赖关系的配置⽂件上的例⼦代码,最终才分析出结果。
参考:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。