소스 검색

homepage recommend

丁云鹏 1 년 전
부모
커밋
8ea6ad381e
18개의 변경된 파일1159개의 추가작업 그리고 346개의 파일을 삭제
  1. 136 0
      logs/recommend-server/error/log-error-2023-10-30.0.log
  2. 110 0
      logs/recommend-server/info/log-info-2023-10-30.0.log
  3. 529 105
      logs/recommend-server/log_error.log
  4. 222 106
      logs/recommend-server/log_info.log
  5. 32 98
      logs/recommend-server/log_warn.log
  6. 98 0
      logs/recommend-server/warn/log-warn-2023-10-30.0.log
  7. 0 11
      recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/client/HelloClient.java
  8. 2 3
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/Application.java
  9. 14 6
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/PreViewedService.java
  10. 4 8
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/RecommendService.java
  11. 1 1
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/ViewedService.java
  12. 4 3
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/flowpool/FlowPoolService.java
  13. 2 0
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/rank/RankService.java
  14. 1 1
      recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/recall/RecallService.java
  15. 1 1
      recommend-server-service/src/main/resources/application-dev.yml
  16. 1 1
      recommend-server-service/src/main/resources/application-pre.yml
  17. 1 1
      recommend-server-service/src/main/resources/application-prod.yml
  18. 1 1
      recommend-server-service/src/main/resources/application-test.yml

+ 136 - 0
logs/recommend-server/error/log-error-2023-10-30.0.log

@@ -0,0 +1,136 @@
+2023-10-30 15:35:31.858 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+java.lang.IllegalArgumentException: Sources must not be empty
+	at org.springframework.util.Assert.notEmpty(Assert.java:470)
+	at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:412)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:325)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:16)
+2023-10-30 15:37:24.410 [main] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter(40) - 
+
+***************************
+APPLICATION FAILED TO START
+***************************
+
+Description:
+
+Field optionalArgs in org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration required a bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs' that could not be found.
+
+The injection point has the following annotations:
+	- @org.springframework.beans.factory.annotation.Autowired(required=true)
+
+
+Action:
+
+Consider defining a bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs' in your configuration.
+
+2023-10-30 15:41:33.579 [main] ERROR o.s.c.n.eureka.serviceregistry.EurekaRegistration(118) - error getting CloudEurekaClient
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scopedTarget.eurekaClient' defined in class path resource [org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.discovery.EurekaClient]: Factory method 'eurekaClient' threw exception; nested exception is java.lang.RuntimeException: Failed to initialize DiscoveryClient!
+	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
+	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1179)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:571)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$1(AbstractBeanFactory.java:374)
+	at org.springframework.cloud.context.scope.GenericScope$BeanLifecycleWrapper.getBean(GenericScope.java:381)
+	at org.springframework.cloud.context.scope.GenericScope.get(GenericScope.java:184)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:371)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.aop.target.SimpleBeanTargetSource.getTarget(SimpleBeanTargetSource.java:35)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration.getTargetObject(EurekaRegistration.java:127)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration.getEurekaClient(EurekaRegistration.java:115)
+	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+	at java.lang.reflect.Method.invoke(Method.java:498)
+	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
+	at org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:490)
+	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
+	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
+	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration$$EnhancerBySpringCGLIB$$cee73c63.getEurekaClient(<generated>)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.maybeInitializeClient(EurekaServiceRegistry.java:54)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.register(EurekaServiceRegistry.java:38)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaAutoServiceRegistration.start(EurekaAutoServiceRegistration.java:83)
+	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178)
+	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
+	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
+	at java.lang.Iterable.forEach(Iterable.java:75)
+	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
+	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
+	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:940)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:15)
+Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.discovery.EurekaClient]: Factory method 'eurekaClient' threw exception; nested exception is java.lang.RuntimeException: Failed to initialize DiscoveryClient!
+	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
+	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
+	... 42 common frames omitted
+Caused by: java.lang.RuntimeException: Failed to initialize DiscoveryClient!
+	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:436)
+	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:283)
+	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:279)
+	at org.springframework.cloud.netflix.eureka.CloudEurekaClient.<init>(CloudEurekaClient.java:66)
+	at org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration.eurekaClient(EurekaClientAutoConfiguration.java:290)
+	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+	at java.lang.reflect.Method.invoke(Method.java:498)
+	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
+	... 43 common frames omitted
+Caused by: java.lang.NoClassDefFoundError: com/sun/jersey/client/apache4/config/DefaultApacheHttpClient4Config
+	at java.lang.ClassLoader.defineClass1(Native Method)
+	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
+	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
+	at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
+	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
+	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
+	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
+	at java.security.AccessController.doPrivileged(Native Method)
+	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
+	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
+	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
+	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
+	at com.netflix.discovery.shared.transport.jersey.EurekaJerseyClientImpl$EurekaJerseyClientBuilder.build(EurekaJerseyClientImpl.java:183)
+	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory$JerseyEurekaHttpClientFactoryBuilder.buildLegacy(JerseyEurekaHttpClientFactory.java:230)
+	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory$JerseyEurekaHttpClientFactoryBuilder.build(JerseyEurekaHttpClientFactory.java:204)
+	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory.create(JerseyEurekaHttpClientFactory.java:161)
+	at com.netflix.discovery.shared.transport.jersey.Jersey1TransportClientFactories.newTransportClientFactory(Jersey1TransportClientFactories.java:59)
+	at com.netflix.discovery.DiscoveryClient.scheduleServerEndpointTask(DiscoveryClient.java:528)
+	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:423)
+	... 52 common frames omitted
+Caused by: java.lang.ClassNotFoundException: com.sun.jersey.client.apache4.config.DefaultApacheHttpClient4Config
+	at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
+	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
+	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
+	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
+	... 71 common frames omitted
+2023-10-30 15:41:33.678 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+org.springframework.context.ApplicationContextException: Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerException
+	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181)
+	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
+	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
+	at java.lang.Iterable.forEach(Iterable.java:75)
+	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
+	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
+	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:940)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:15)
+Caused by: java.lang.NullPointerException: null
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.maybeInitializeClient(EurekaServiceRegistry.java:54)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.register(EurekaServiceRegistry.java:38)
+	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaAutoServiceRegistration.start(EurekaAutoServiceRegistration.java:83)
+	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178)
+	... 15 common frames omitted

+ 110 - 0
logs/recommend-server/info/log-info-2023-10-30.0.log

@@ -0,0 +1,110 @@
+2023-10-30 15:35:19.907 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-10-30 15:35:19.989 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
+2023-10-30 15:35:19.998 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-10-30 15:35:20.032 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-10-30 15:35:20.035 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-10-30 15:35:31.819 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56729 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-10-30 15:35:31.822 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-10-30 15:37:10.589 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-10-30 15:37:10.662 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
+2023-10-30 15:37:10.668 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-10-30 15:37:10.711 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-10-30 15:37:10.719 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-10-30 15:37:22.778 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56744 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-10-30 15:37:22.785 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-10-30 15:37:23.398 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-10-30 15:37:23.401 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-10-30 15:37:23.447 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 37 ms. Found 0 Redis repository interfaces.
+2023-10-30 15:37:23.667 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-10-30 15:37:23.760 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=a5dda9fc-9399-3e4b-9685-b2929c3cb96e
+2023-10-30 15:37:24.395 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-10-30 15:41:18.058 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-10-30 15:41:18.138 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
+2023-10-30 15:41:18.143 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-10-30 15:41:18.176 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-10-30 15:41:18.184 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-10-30 15:41:29.964 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56793 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-10-30 15:41:29.972 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-10-30 15:41:30.977 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-10-30 15:41:30.980 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-10-30 15:41:31.022 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 33 ms. Found 0 Redis repository interfaces.
+2023-10-30 15:41:31.156 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-10-30 15:41:31.246 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=3e6ae75b-be67-3162-ac12-17c6d3cac94c
+2023-10-30 15:41:31.492 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-10-30 15:41:31.501 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-10-30 15:41:31.758 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-10-30 15:41:31.764 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-10-30 15:41:31.765 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-10-30 15:41:31.765 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-10-30 15:41:31.827 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-10-30 15:41:31.828 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 1784 ms
+2023-10-30 15:41:32.199 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(181) - Initializing ExecutorService 'applicationTaskExecutor'
+2023-10-30 15:41:32.229 [main] INFO  c.a.cloud.sentinel.SentinelWebAutoConfiguration(80) - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
+2023-10-30 15:41:32.500 [main] INFO  o.s.c.n.e.c.DiscoveryClientOptionalArgsConfiguration(87) - Eureka HTTP Client uses Jersey
+2023-10-30 15:41:33.473 [main] INFO  o.s.b.actuate.endpoint.web.EndpointLinksResolver(58) - Exposing 2 endpoint(s) beneath base path '/actuator'
+2023-10-30 15:41:33.558 [main] INFO  o.s.cloud.netflix.eureka.InstanceInfoFactory(67) - Setting initial instance status as: STARTING
+2023-10-30 15:41:33.574 [main] INFO  com.netflix.discovery.DiscoveryClient(372) - Initializing Eureka in region us-east-1
+2023-10-30 15:41:33.598 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(218) - Shutting down ExecutorService 'applicationTaskExecutor'
+2023-10-30 15:41:33.611 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-10-30 15:41:33.659 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-10-30 15:56:15.418 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-10-30 15:56:15.521 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
+2023-10-30 15:56:15.531 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-10-30 15:56:15.567 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-10-30 15:56:15.573 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-10-30 15:56:27.375 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56935 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-10-30 15:56:27.382 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-10-30 15:56:28.440 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-10-30 15:56:28.443 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-10-30 15:56:28.486 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 34 ms. Found 0 Redis repository interfaces.
+2023-10-30 15:56:28.622 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-10-30 15:56:28.710 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=3e6ae75b-be67-3162-ac12-17c6d3cac94c
+2023-10-30 15:56:28.958 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-10-30 15:56:28.966 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-10-30 15:56:29.207 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-10-30 15:56:29.214 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-10-30 15:56:29.214 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-10-30 15:56:29.215 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-10-30 15:56:29.284 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-10-30 15:56:29.285 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 1830 ms
+2023-10-30 15:56:29.710 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(181) - Initializing ExecutorService 'applicationTaskExecutor'
+2023-10-30 15:56:29.801 [main] INFO  c.a.cloud.sentinel.SentinelWebAutoConfiguration(80) - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
+2023-10-30 15:56:30.110 [main] INFO  o.s.c.n.e.c.DiscoveryClientOptionalArgsConfiguration(87) - Eureka HTTP Client uses Jersey
+2023-10-30 15:56:30.909 [main] INFO  o.s.b.actuate.endpoint.web.EndpointLinksResolver(58) - Exposing 2 endpoint(s) beneath base path '/actuator'
+2023-10-30 15:56:30.996 [main] INFO  o.s.cloud.netflix.eureka.InstanceInfoFactory(67) - Setting initial instance status as: STARTING
+2023-10-30 15:56:31.011 [main] INFO  com.netflix.discovery.DiscoveryClient(372) - Initializing Eureka in region us-east-1
+2023-10-30 15:56:31.037 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(70) - Using JSON encoding codec LegacyJacksonJson
+2023-10-30 15:56:31.037 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(71) - Using JSON decoding codec LegacyJacksonJson
+2023-10-30 15:56:31.122 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(80) - Using XML encoding codec XStreamXml
+2023-10-30 15:56:31.124 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(81) - Using XML decoding codec XStreamXml
+2023-10-30 15:56:31.255 [main] INFO  c.n.d.shared.resolver.aws.ConfigClusterResolver(43) - Resolving eureka endpoints via configuration
+2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1007) - Disable delta property : false
+2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1008) - Single vip registry refresh property : null
+2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1009) - Force full registry fetch : false
+2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1010) - Application is null : false
+2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1011) - Registered Applications size is zero : true
+2023-10-30 15:56:31.265 [main] INFO  com.netflix.discovery.DiscoveryClient(1013) - Application version is -1: true
+2023-10-30 15:56:31.265 [main] INFO  com.netflix.discovery.DiscoveryClient(1097) - Getting all instance registry info from the eureka server
+2023-10-30 15:56:31.421 [main] INFO  com.netflix.discovery.DiscoveryClient(1106) - The response status is 200
+2023-10-30 15:56:31.427 [main] INFO  com.netflix.discovery.DiscoveryClient(1321) - Starting heartbeat executor: renew interval is: 10
+2023-10-30 15:56:31.430 [main] INFO  com.netflix.discovery.InstanceInfoReplicator(60) - InstanceInfoReplicator onDemand update allowed rate per min is 4
+2023-10-30 15:56:31.432 [main] INFO  com.netflix.discovery.DiscoveryClient(492) - Discovery Client initialized at timestamp 1698652591431 with initial instances count: 6
+2023-10-30 15:56:31.445 [main] INFO  o.s.c.n.e.serviceregistry.EurekaServiceRegistry(41) - Registering application RECOMMEND-SERVER with eureka with status UP
+2023-10-30 15:56:31.446 [main] INFO  com.netflix.discovery.DiscoveryClient(1352) - Saw local status change event StatusChangeEvent [timestamp=1698652591446, current=UP, previous=STARTING]
+2023-10-30 15:56:31.449 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(873) - DiscoveryClient_RECOMMEND-SERVER/192.168.80.15:recommend-server:8080: registering service...
+2023-10-30 15:56:31.455 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Starting ProtocolHandler ["http-nio-8080"]
+2023-10-30 15:56:31.492 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(220) - Tomcat started on port(s): 8080 (http) with context path '/recommend-sort'
+2023-10-30 15:56:31.498 [main] INFO  o.s.c.n.e.s.EurekaAutoServiceRegistration(144) - Updating port to 8080
+2023-10-30 15:56:31.526 [main] INFO  n.d.b.g.s.serverfactory.AbstractGrpcServerFactory(115) - Registered gRPC service: HelloService, bean: helloService, class: com.tzld.piaoquan.recommend.server.grpcservice.HelloService
+2023-10-30 15:56:31.530 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(882) - DiscoveryClient_RECOMMEND-SERVER/192.168.80.15:recommend-server:8080 - registration status: 204
+2023-10-30 15:56:36.599 [main] INFO  n.d.b.g.server.serverfactory.GrpcServerLifecycle(91) - gRPC Server started, listening on address: *, port: 9090
+2023-10-30 15:56:36.641 [main] INFO  com.tzld.piaoquan.recommend.server.Application(61) - Started Application in 47.131 seconds (JVM running for 52.808)
+2023-10-30 15:56:37.361 [RMI TCP Connection(2)-192.168.80.15] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring DispatcherServlet 'dispatcherServlet'
+2023-10-30 15:56:37.363 [RMI TCP Connection(2)-192.168.80.15] INFO  org.springframework.web.servlet.DispatcherServlet(525) - Initializing Servlet 'dispatcherServlet'
+2023-10-30 15:56:37.366 [RMI TCP Connection(2)-192.168.80.15] INFO  org.springframework.web.servlet.DispatcherServlet(547) - Completed initialization in 3 ms
+2023-10-30 15:56:37.404 [RMI TCP Connection(1)-192.168.80.15] INFO  com.zaxxer.hikari.HikariDataSource(110) - HikariPool-1 - Starting...
+2023-10-30 15:56:38.211 [RMI TCP Connection(1)-192.168.80.15] INFO  com.zaxxer.hikari.HikariDataSource(123) - HikariPool-1 - Start completed.

+ 529 - 105
logs/recommend-server/log_error.log

@@ -1,10 +1,4 @@
-2023-10-30 15:35:31.858 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
-java.lang.IllegalArgumentException: Sources must not be empty
-	at org.springframework.util.Assert.notEmpty(Assert.java:470)
-	at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:412)
-	at org.springframework.boot.SpringApplication.run(SpringApplication.java:325)
-	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:16)
-2023-10-30 15:37:24.410 [main] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter(40) - 
+2023-11-08 10:40:36.492 [main] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter(40) - 
 
 ***************************
 APPLICATION FAILED TO START
@@ -12,7 +6,7 @@ APPLICATION FAILED TO START
 
 Description:
 
-Field optionalArgs in org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration required a bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs' that could not be found.
+Field redisTemplate in com.tzld.piaoquan.recommend.server.service.PreViewedService required a bean of type 'org.springframework.data.redis.core.RedisTemplate' that could not be found.
 
 The injection point has the following annotations:
 	- @org.springframework.beans.factory.annotation.Autowired(required=true)
@@ -20,45 +14,188 @@ The injection point has the following annotations:
 
 Action:
 
-Consider defining a bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs' in your configuration.
+Consider defining a bean of type 'org.springframework.data.redis.core.RedisTemplate' in your configuration.
 
-2023-10-30 15:41:33.579 [main] ERROR o.s.c.n.eureka.serviceregistry.EurekaRegistration(118) - error getting CloudEurekaClient
-org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scopedTarget.eurekaClient' defined in class path resource [org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.discovery.EurekaClient]: Factory method 'eurekaClient' threw exception; nested exception is java.lang.RuntimeException: Failed to initialize DiscoveryClient!
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336)
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1179)
-	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:571)
+2023-11-08 10:44:01.407 [main] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter(40) - 
+
+***************************
+APPLICATION FAILED TO START
+***************************
+
+Description:
+
+Field redisTemplate in com.tzld.piaoquan.recommend.server.service.PreViewedService required a bean of type 'org.springframework.data.redis.core.RedisTemplate' that could not be found.
+
+The injection point has the following annotations:
+	- @org.springframework.beans.factory.annotation.Autowired(required=true)
+
+
+Action:
+
+Consider defining a bean of type 'org.springframework.data.redis.core.RedisTemplate' in your configuration.
+
+2023-11-08 10:51:47.985 [main] ERROR c.c.f.a.s.annotation.ApolloAnnotationProcessor(203) - Parsing json 'city_code' to type java.util.Set<java.lang.String> failed!
+com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.Gson.fromJson(Gson.java:944)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
+	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1415)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:608)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:18)
+Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:351)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 38 common frames omitted
+2023-11-08 10:51:48.199 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'recommendService': Unsatisfied dependency expressed through field 'recallService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:643)
+	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1415)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:608)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:18)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:617)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
+	... 20 common frames omitted
+Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.Gson.fromJson(Gson.java:944)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	... 29 common frames omitted
+Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:351)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 38 common frames omitted
+2023-11-08 10:57:11.343 [main] ERROR c.c.f.a.s.annotation.ApolloAnnotationProcessor(203) - Parsing json 'city_code:[]' to type java.util.Set<java.lang.String> failed!
+com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.Gson.fromJson(Gson.java:944)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
+	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1415)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:608)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:351)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 38 common frames omitted
+2023-11-08 10:57:11.538 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'recommendService': Unsatisfied dependency expressed through field 'recallService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:643)
+	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1415)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:608)
 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
-	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$1(AbstractBeanFactory.java:374)
-	at org.springframework.cloud.context.scope.GenericScope$BeanLifecycleWrapper.getBean(GenericScope.java:381)
-	at org.springframework.cloud.context.scope.GenericScope.get(GenericScope.java:184)
-	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:371)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
-	at org.springframework.aop.target.SimpleBeanTargetSource.getTarget(SimpleBeanTargetSource.java:35)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration.getTargetObject(EurekaRegistration.java:127)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration.getEurekaClient(EurekaRegistration.java:115)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:490)
-	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
-	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
-	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaRegistration$$EnhancerBySpringCGLIB$$cee73c63.getEurekaClient(<generated>)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.maybeInitializeClient(EurekaServiceRegistry.java:54)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.register(EurekaServiceRegistry.java:38)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaAutoServiceRegistration.start(EurekaAutoServiceRegistration.java:83)
-	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178)
-	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
-	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
-	at java.lang.Iterable.forEach(Iterable.java:75)
-	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
-	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
-	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:940)
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
 	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
@@ -66,60 +203,330 @@ org.springframework.beans.factory.BeanCreationException: Error creating bean wit
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
-	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:15)
-Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.discovery.EurekaClient]: Factory method 'eurekaClient' threw exception; nested exception is java.lang.RuntimeException: Failed to initialize DiscoveryClient!
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
-	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
-	... 42 common frames omitted
-Caused by: java.lang.RuntimeException: Failed to initialize DiscoveryClient!
-	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:436)
-	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:283)
-	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:279)
-	at org.springframework.cloud.netflix.eureka.CloudEurekaClient.<init>(CloudEurekaClient.java:66)
-	at org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration.eurekaClient(EurekaClientAutoConfiguration.java:290)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
-	... 43 common frames omitted
-Caused by: java.lang.NoClassDefFoundError: com/sun/jersey/client/apache4/config/DefaultApacheHttpClient4Config
-	at java.lang.ClassLoader.defineClass1(Native Method)
-	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
-	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
-	at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
-	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
-	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
-	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
-	at java.security.AccessController.doPrivileged(Native Method)
-	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
-	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
-	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
-	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
-	at com.netflix.discovery.shared.transport.jersey.EurekaJerseyClientImpl$EurekaJerseyClientBuilder.build(EurekaJerseyClientImpl.java:183)
-	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory$JerseyEurekaHttpClientFactoryBuilder.buildLegacy(JerseyEurekaHttpClientFactory.java:230)
-	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory$JerseyEurekaHttpClientFactoryBuilder.build(JerseyEurekaHttpClientFactory.java:204)
-	at com.netflix.discovery.shared.transport.jersey.JerseyEurekaHttpClientFactory.create(JerseyEurekaHttpClientFactory.java:161)
-	at com.netflix.discovery.shared.transport.jersey.Jersey1TransportClientFactories.newTransportClientFactory(Jersey1TransportClientFactories.java:59)
-	at com.netflix.discovery.DiscoveryClient.scheduleServerEndpointTask(DiscoveryClient.java:528)
-	at com.netflix.discovery.DiscoveryClient.<init>(DiscoveryClient.java:423)
-	... 52 common frames omitted
-Caused by: java.lang.ClassNotFoundException: com.sun.jersey.client.apache4.config.DefaultApacheHttpClient4Config
-	at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
-	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
-	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
-	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
-	... 71 common frames omitted
-2023-10-30 15:41:33.678 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
-org.springframework.context.ApplicationContextException: Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerException
-	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181)
-	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
-	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
-	at java.lang.Iterable.forEach(Iterable.java:75)
-	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
-	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
-	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:940)
-	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:617)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
+	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
+	... 20 common frames omitted
+Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.Gson.fromJson(Gson.java:944)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	... 29 common frames omitted
+Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+	at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:351)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:80)
+	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 38 common frames omitted
+2023-11-08 11:01:23.005 [main] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter(40) - 
+
+***************************
+APPLICATION FAILED TO START
+***************************
+
+Description:
+
+Field rankService in com.tzld.piaoquan.recommend.server.service.RecommendService required a bean of type 'com.tzld.piaoquan.recommend.server.service.rank.RankService' that could not be found.
+
+The injection point has the following annotations:
+	- @org.springframework.beans.factory.annotation.Autowired(required=true)
+
+
+Action:
+
+Consider defining a bean of type 'com.tzld.piaoquan.recommend.server.service.rank.RankService' in your configuration.
+
+2023-11-08 11:02:37.830 [main] ERROR c.c.f.a.s.annotation.ApolloAnnotationProcessor(203) - Parsing json '{
+    "069": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "074": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "095": {
+        "data_key": "data1", "rule_key": "rule4",
+        "ab_code": "60010"
+    },
+    "095-1": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "121": {
+        "data_key": "data2", "rule_key": "rule7-1",
+        "ab_code": "60022"
+    },
+    "144": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60031"
+    },
+    "328": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60054"
+    },
+    "395": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60067"
+    },
+    "396": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60068"
+    },
+    "420": {
+        "data_key": "data1", "rule_key": "rule4",
+        "ab_code": "60072"
+    },
+    "463": {
+        "data_key": "data1", "rule_key": "rule22",
+        "ab_code": "60077"
+    },
+    "469": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score2:",
+        "ab_code": "60080"
+    },
+    "470": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score4:",
+        "ab_code": "60081"
+    },
+    "471": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score5:",
+        "ab_code": "60082"
+    },
+    "475": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score6:",
+        "ab_code": "60083"
+    },
+    "476": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score7:",
+        "ab_code": "60084"
+    "480": {
+        "data_key": "data1", "rule_key": "rule22", "rank_key_prefix": "rank:score4:",
+        "ab_code": "60085"
+    },
+    "481": {
+        "data_key": "data1", "rule_key": "rule22", "rank_key_prefix": "rank:score6:",
+        "ab_code": "60086"
+    }
+}' to type java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.lang.String>> failed!
+com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.Gson.fromJson(Gson.java:947)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1564)
+	at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:492)
+	at com.google.gson.stream.JsonReader.hasNext(JsonReader.java:415)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:184)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 25 common frames omitted
+2023-11-08 11:02:38.023 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recommendService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/RecommendService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:617)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.Gson.fromJson(Gson.java:947)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	... 16 common frames omitted
+Caused by: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1564)
+	at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:492)
+	at com.google.gson.stream.JsonReader.hasNext(JsonReader.java:415)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:184)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 25 common frames omitted
+2023-11-08 11:05:17.576 [main] ERROR c.c.f.a.s.annotation.ApolloAnnotationProcessor(203) - Parsing json '{
+    "069": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "074": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "095": {
+        "data_key": "data1", "rule_key": "rule4",
+        "ab_code": "60010"
+    },
+    "095-1": {
+        "data_key": "data1", "rule_key": "rule4-1",
+        "ab_code": "60000"
+    },
+    "121": {
+        "data_key": "data2", "rule_key": "rule7-1",
+        "ab_code": "60022"
+    },
+    "144": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60031"
+    },
+    "328": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60054"
+    },
+    "395": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60067"
+    },
+    "396": {
+        "data_key": "data10", "rule_key": "rule7",
+        "ab_code": "60068"
+    },
+    "420": {
+        "data_key": "data1", "rule_key": "rule4",
+        "ab_code": "60072"
+    },
+    "463": {
+        "data_key": "data1", "rule_key": "rule22",
+        "ab_code": "60077"
+    },
+    "469": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score2:",
+        "ab_code": "60080"
+    },
+    "470": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score4:",
+        "ab_code": "60081"
+    },
+    "471": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score5:",
+        "ab_code": "60082"
+    },
+    "475": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score6:",
+        "ab_code": "60083"
+    },
+    "476": {
+        "data_key": "data10", "rule_key": "rule7", "rank_key_prefix": "rank:score7:",
+        "ab_code": "60084"
+    "480": {
+        "data_key": "data1", "rule_key": "rule22", "rank_key_prefix": "rank:score4:",
+        "ab_code": "60085"
+    },
+    "481": {
+        "data_key": "data1", "rule_key": "rule22", "rank_key_prefix": "rank:score6:",
+        "ab_code": "60086"
+    }
+}' to type java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.lang.String>> failed!
+com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.Gson.fromJson(Gson.java:947)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
+	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
+	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
+	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
+	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1564)
+	at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:492)
+	at com.google.gson.stream.JsonReader.hasNext(JsonReader.java:415)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:184)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 25 common frames omitted
+2023-11-08 11:05:17.759 [main] ERROR org.springframework.boot.SpringApplication(856) - Application run failed
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recommendService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/RecommendService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:617)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
+	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923)
+	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588)
 	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
@@ -127,10 +534,27 @@ org.springframework.context.ApplicationContextException: Failed to start bean 'e
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
-	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:15)
-Caused by: java.lang.NullPointerException: null
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.maybeInitializeClient(EurekaServiceRegistry.java:54)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaServiceRegistry.register(EurekaServiceRegistry.java:38)
-	at org.springframework.cloud.netflix.eureka.serviceregistry.EurekaAutoServiceRegistration.start(EurekaAutoServiceRegistration.java:83)
-	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178)
-	... 15 common frames omitted
+	at com.tzld.piaoquan.recommend.server.Application.main(Application.java:17)
+Caused by: com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.Gson.fromJson(Gson.java:947)
+	at com.google.gson.Gson.fromJson(Gson.java:897)
+	at com.google.gson.Gson.fromJson(Gson.java:846)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.parseJsonValue(ApolloAnnotationProcessor.java:201)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processApolloJsonValue(ApolloAnnotationProcessor.java:149)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloAnnotationProcessor.processField(ApolloAnnotationProcessor.java:63)
+	at com.ctrip.framework.apollo.spring.annotation.ApolloProcessor.postProcessBeforeInitialization(ApolloProcessor.java:23)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1780)
+	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609)
+	... 16 common frames omitted
+Caused by: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+	at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1564)
+	at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:492)
+	at com.google.gson.stream.JsonReader.hasNext(JsonReader.java:415)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:184)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
+	at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
+	at com.google.gson.Gson.fromJson(Gson.java:932)
+	... 25 common frames omitted

+ 222 - 106
logs/recommend-server/log_info.log

@@ -1,110 +1,226 @@
-2023-10-30 15:35:19.907 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
-2023-10-30 15:35:19.989 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
-2023-10-30 15:35:19.998 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
-2023-10-30 15:35:20.032 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
-2023-10-30 15:35:20.035 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
-2023-10-30 15:35:31.819 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56729 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
-2023-10-30 15:35:31.822 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
-2023-10-30 15:37:10.589 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
-2023-10-30 15:37:10.662 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
-2023-10-30 15:37:10.668 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
-2023-10-30 15:37:10.711 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
-2023-10-30 15:37:10.719 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
-2023-10-30 15:37:22.778 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56744 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
-2023-10-30 15:37:22.785 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
-2023-10-30 15:37:23.398 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
-2023-10-30 15:37:23.401 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-2023-10-30 15:37:23.447 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 37 ms. Found 0 Redis repository interfaces.
-2023-10-30 15:37:23.667 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
-2023-10-30 15:37:23.760 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=a5dda9fc-9399-3e4b-9685-b2929c3cb96e
-2023-10-30 15:37:24.395 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+2023-11-08 10:40:23.582 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 10:40:23.705 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 10:40:23.715 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 10:40:23.743 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 10:40:23.747 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 10:40:34.101 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76301 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 10:40:34.103 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 10:40:35.282 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 10:40:35.286 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 10:40:35.347 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 52 ms. Found 0 Redis repository interfaces.
+2023-11-08 10:40:35.496 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 10:40:35.594 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=725f6eee-00a2-30d7-bacd-df149467de66
+2023-11-08 10:40:35.866 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:40:35.878 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:40:36.156 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 10:40:36.163 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 10:40:36.163 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 10:40:36.164 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 10:40:36.237 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 10:40:36.238 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2092 ms
+2023-11-08 10:40:36.427 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 10:40:36.464 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
 
 Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-2023-10-30 15:41:18.058 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
-2023-10-30 15:41:18.138 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
-2023-10-30 15:41:18.143 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
-2023-10-30 15:41:18.176 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
-2023-10-30 15:41:18.184 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
-2023-10-30 15:41:29.964 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56793 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
-2023-10-30 15:41:29.972 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
-2023-10-30 15:41:30.977 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
-2023-10-30 15:41:30.980 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-2023-10-30 15:41:31.022 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 33 ms. Found 0 Redis repository interfaces.
-2023-10-30 15:41:31.156 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
-2023-10-30 15:41:31.246 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=3e6ae75b-be67-3162-ac12-17c6d3cac94c
-2023-10-30 15:41:31.492 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-2023-10-30 15:41:31.501 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-2023-10-30 15:41:31.758 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
-2023-10-30 15:41:31.764 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
-2023-10-30 15:41:31.765 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
-2023-10-30 15:41:31.765 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
-2023-10-30 15:41:31.827 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
-2023-10-30 15:41:31.828 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 1784 ms
-2023-10-30 15:41:32.199 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(181) - Initializing ExecutorService 'applicationTaskExecutor'
-2023-10-30 15:41:32.229 [main] INFO  c.a.cloud.sentinel.SentinelWebAutoConfiguration(80) - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-2023-10-30 15:41:32.500 [main] INFO  o.s.c.n.e.c.DiscoveryClientOptionalArgsConfiguration(87) - Eureka HTTP Client uses Jersey
-2023-10-30 15:41:33.473 [main] INFO  o.s.b.actuate.endpoint.web.EndpointLinksResolver(58) - Exposing 2 endpoint(s) beneath base path '/actuator'
-2023-10-30 15:41:33.558 [main] INFO  o.s.cloud.netflix.eureka.InstanceInfoFactory(67) - Setting initial instance status as: STARTING
-2023-10-30 15:41:33.574 [main] INFO  com.netflix.discovery.DiscoveryClient(372) - Initializing Eureka in region us-east-1
-2023-10-30 15:41:33.598 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(218) - Shutting down ExecutorService 'applicationTaskExecutor'
-2023-10-30 15:41:33.611 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
-2023-10-30 15:41:33.659 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+2023-11-08 10:43:48.696 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 10:43:48.778 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 10:43:48.784 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 10:43:48.816 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 10:43:48.818 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 10:43:59.070 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76331 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 10:43:59.071 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 10:44:00.185 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 10:44:00.191 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 10:44:00.252 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 53 ms. Found 0 Redis repository interfaces.
+2023-11-08 10:44:00.414 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 10:44:00.536 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=557e94d1-85e2-360b-9b11-7e28603a4a60
+2023-11-08 10:44:00.824 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:44:00.835 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:44:01.077 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 10:44:01.087 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 10:44:01.089 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 10:44:01.089 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 10:44:01.157 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 10:44:01.157 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2042 ms
+2023-11-08 10:44:01.342 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 10:44:01.378 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
 
 Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
-2023-10-30 15:56:15.418 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
-2023-10-30 15:56:15.521 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-sort by app.id property from System Property
-2023-10-30 15:56:15.531 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
-2023-10-30 15:56:15.567 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
-2023-10-30 15:56:15.573 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
-2023-10-30 15:56:27.375 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 56935 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
-2023-10-30 15:56:27.382 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
-2023-10-30 15:56:28.440 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
-2023-10-30 15:56:28.443 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
-2023-10-30 15:56:28.486 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 34 ms. Found 0 Redis repository interfaces.
-2023-10-30 15:56:28.622 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
-2023-10-30 15:56:28.710 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=3e6ae75b-be67-3162-ac12-17c6d3cac94c
-2023-10-30 15:56:28.958 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-2023-10-30 15:56:28.966 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
-2023-10-30 15:56:29.207 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
-2023-10-30 15:56:29.214 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
-2023-10-30 15:56:29.214 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
-2023-10-30 15:56:29.215 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
-2023-10-30 15:56:29.284 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
-2023-10-30 15:56:29.285 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 1830 ms
-2023-10-30 15:56:29.710 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(181) - Initializing ExecutorService 'applicationTaskExecutor'
-2023-10-30 15:56:29.801 [main] INFO  c.a.cloud.sentinel.SentinelWebAutoConfiguration(80) - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
-2023-10-30 15:56:30.110 [main] INFO  o.s.c.n.e.c.DiscoveryClientOptionalArgsConfiguration(87) - Eureka HTTP Client uses Jersey
-2023-10-30 15:56:30.909 [main] INFO  o.s.b.actuate.endpoint.web.EndpointLinksResolver(58) - Exposing 2 endpoint(s) beneath base path '/actuator'
-2023-10-30 15:56:30.996 [main] INFO  o.s.cloud.netflix.eureka.InstanceInfoFactory(67) - Setting initial instance status as: STARTING
-2023-10-30 15:56:31.011 [main] INFO  com.netflix.discovery.DiscoveryClient(372) - Initializing Eureka in region us-east-1
-2023-10-30 15:56:31.037 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(70) - Using JSON encoding codec LegacyJacksonJson
-2023-10-30 15:56:31.037 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(71) - Using JSON decoding codec LegacyJacksonJson
-2023-10-30 15:56:31.122 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(80) - Using XML encoding codec XStreamXml
-2023-10-30 15:56:31.124 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(81) - Using XML decoding codec XStreamXml
-2023-10-30 15:56:31.255 [main] INFO  c.n.d.shared.resolver.aws.ConfigClusterResolver(43) - Resolving eureka endpoints via configuration
-2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1007) - Disable delta property : false
-2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1008) - Single vip registry refresh property : null
-2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1009) - Force full registry fetch : false
-2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1010) - Application is null : false
-2023-10-30 15:56:31.264 [main] INFO  com.netflix.discovery.DiscoveryClient(1011) - Registered Applications size is zero : true
-2023-10-30 15:56:31.265 [main] INFO  com.netflix.discovery.DiscoveryClient(1013) - Application version is -1: true
-2023-10-30 15:56:31.265 [main] INFO  com.netflix.discovery.DiscoveryClient(1097) - Getting all instance registry info from the eureka server
-2023-10-30 15:56:31.421 [main] INFO  com.netflix.discovery.DiscoveryClient(1106) - The response status is 200
-2023-10-30 15:56:31.427 [main] INFO  com.netflix.discovery.DiscoveryClient(1321) - Starting heartbeat executor: renew interval is: 10
-2023-10-30 15:56:31.430 [main] INFO  com.netflix.discovery.InstanceInfoReplicator(60) - InstanceInfoReplicator onDemand update allowed rate per min is 4
-2023-10-30 15:56:31.432 [main] INFO  com.netflix.discovery.DiscoveryClient(492) - Discovery Client initialized at timestamp 1698652591431 with initial instances count: 6
-2023-10-30 15:56:31.445 [main] INFO  o.s.c.n.e.serviceregistry.EurekaServiceRegistry(41) - Registering application RECOMMEND-SERVER with eureka with status UP
-2023-10-30 15:56:31.446 [main] INFO  com.netflix.discovery.DiscoveryClient(1352) - Saw local status change event StatusChangeEvent [timestamp=1698652591446, current=UP, previous=STARTING]
-2023-10-30 15:56:31.449 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(873) - DiscoveryClient_RECOMMEND-SERVER/192.168.80.15:recommend-server:8080: registering service...
-2023-10-30 15:56:31.455 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Starting ProtocolHandler ["http-nio-8080"]
-2023-10-30 15:56:31.492 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(220) - Tomcat started on port(s): 8080 (http) with context path '/recommend-sort'
-2023-10-30 15:56:31.498 [main] INFO  o.s.c.n.e.s.EurekaAutoServiceRegistration(144) - Updating port to 8080
-2023-10-30 15:56:31.526 [main] INFO  n.d.b.g.s.serverfactory.AbstractGrpcServerFactory(115) - Registered gRPC service: HelloService, bean: helloService, class: com.tzld.piaoquan.recommend.server.grpcservice.HelloService
-2023-10-30 15:56:31.530 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(882) - DiscoveryClient_RECOMMEND-SERVER/192.168.80.15:recommend-server:8080 - registration status: 204
-2023-10-30 15:56:36.599 [main] INFO  n.d.b.g.server.serverfactory.GrpcServerLifecycle(91) - gRPC Server started, listening on address: *, port: 9090
-2023-10-30 15:56:36.641 [main] INFO  com.tzld.piaoquan.recommend.server.Application(61) - Started Application in 47.131 seconds (JVM running for 52.808)
-2023-10-30 15:56:37.361 [RMI TCP Connection(2)-192.168.80.15] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring DispatcherServlet 'dispatcherServlet'
-2023-10-30 15:56:37.363 [RMI TCP Connection(2)-192.168.80.15] INFO  org.springframework.web.servlet.DispatcherServlet(525) - Initializing Servlet 'dispatcherServlet'
-2023-10-30 15:56:37.366 [RMI TCP Connection(2)-192.168.80.15] INFO  org.springframework.web.servlet.DispatcherServlet(547) - Completed initialization in 3 ms
-2023-10-30 15:56:37.404 [RMI TCP Connection(1)-192.168.80.15] INFO  com.zaxxer.hikari.HikariDataSource(110) - HikariPool-1 - Starting...
-2023-10-30 15:56:38.211 [RMI TCP Connection(1)-192.168.80.15] INFO  com.zaxxer.hikari.HikariDataSource(123) - HikariPool-1 - Start completed.
+2023-11-08 10:51:34.229 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 10:51:34.367 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 10:51:34.377 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 10:51:34.409 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 10:51:34.413 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 10:51:44.703 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76410 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 10:51:44.705 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 10:51:46.176 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 10:51:46.183 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 10:51:46.276 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 80 ms. Found 0 Redis repository interfaces.
+2023-11-08 10:51:46.505 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 10:51:46.676 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=78170ade-19d8-3a69-900e-80b49796ed63
+2023-11-08 10:51:47.060 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:51:47.073 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:51:47.400 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 10:51:47.408 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 10:51:47.409 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 10:51:47.409 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 10:51:47.502 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 10:51:47.502 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2747 ms
+2023-11-08 10:51:48.118 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 10:51:48.176 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-11-08 10:56:58.315 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 10:56:58.428 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 10:56:58.435 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 10:56:58.471 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 10:56:58.474 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 10:57:08.743 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76453 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 10:57:08.745 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 10:57:09.962 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 10:57:09.967 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 10:57:10.021 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 45 ms. Found 0 Redis repository interfaces.
+2023-11-08 10:57:10.157 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 10:57:10.254 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=78170ade-19d8-3a69-900e-80b49796ed63
+2023-11-08 10:57:10.506 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:57:10.518 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 10:57:10.778 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 10:57:10.784 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 10:57:10.786 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 10:57:10.787 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 10:57:10.873 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 10:57:10.874 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2088 ms
+2023-11-08 10:57:11.473 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 10:57:11.519 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-11-08 11:01:09.293 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 11:01:09.396 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 11:01:09.404 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 11:01:09.434 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 11:01:09.437 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 11:01:19.709 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76489 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 11:01:19.712 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 11:01:21.076 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 11:01:21.083 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 11:01:21.154 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 60 ms. Found 0 Redis repository interfaces.
+2023-11-08 11:01:21.330 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 11:01:21.445 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=78170ade-19d8-3a69-900e-80b49796ed63
+2023-11-08 11:01:21.798 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:01:21.817 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:01:22.147 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 11:01:22.157 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 11:01:22.159 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 11:01:22.159 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 11:01:22.255 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 11:01:22.255 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2487 ms
+2023-11-08 11:01:22.936 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 11:01:22.979 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-11-08 11:02:24.544 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 11:02:24.641 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 11:02:24.650 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 11:02:24.694 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 11:02:24.703 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 11:02:34.995 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76521 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 11:02:34.997 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 11:02:36.313 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 11:02:36.320 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 11:02:36.385 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 55 ms. Found 0 Redis repository interfaces.
+2023-11-08 11:02:36.549 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 11:02:36.641 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=03118c26-269d-3b80-a0e4-c07ba057ad00
+2023-11-08 11:02:36.942 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:02:36.959 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:02:37.269 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 11:02:37.277 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 11:02:37.278 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 11:02:37.278 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 11:02:37.356 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 11:02:37.356 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2320 ms
+2023-11-08 11:02:37.960 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 11:02:38.003 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-11-08 11:05:04.694 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 11:05:04.784 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 11:05:04.792 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 11:05:04.824 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 11:05:04.832 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 11:05:15.135 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76606 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 11:05:15.136 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 11:05:16.267 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 11:05:16.271 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 11:05:16.325 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 44 ms. Found 0 Redis repository interfaces.
+2023-11-08 11:05:16.455 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 11:05:16.558 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=03118c26-269d-3b80-a0e4-c07ba057ad00
+2023-11-08 11:05:16.810 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:05:16.819 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:05:17.070 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 11:05:17.077 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 11:05:17.078 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 11:05:17.078 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 11:05:17.149 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 11:05:17.149 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 1973 ms
+2023-11-08 11:05:17.702 [main] INFO  org.apache.catalina.core.StandardService(173) - Stopping service [Tomcat]
+2023-11-08 11:05:17.740 [main] INFO  o.s.b.a.l.ConditionEvaluationReportLoggingListener(136) - 
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+2023-11-08 11:06:21.804 [background-preinit] INFO  org.hibernate.validator.internal.util.Version(21) - HV000001: Hibernate Validator 6.1.7.Final
+2023-11-08 11:06:21.912 [main] INFO  c.c.f.f.i.provider.DefaultApplicationProvider(100) - App ID is set to recommend-server by app.id property from System Property
+2023-11-08 11:06:21.921 [main] INFO  c.c.f.f.internals.provider.DefaultServerProvider(176) - Environment is set to null. Because it is not available in either (1) JVM system property 'env', (2) OS env variable 'ENV' nor (3) property 'env' from the properties InputStream.
+2023-11-08 11:06:21.956 [main] INFO  c.c.f.apollo.internals.DefaultMetaServerProvider(42) - Located meta services from apollo.meta configuration: http://devapolloconfig-internal.piaoquantv.com!
+2023-11-08 11:06:21.961 [main] INFO  com.ctrip.framework.apollo.core.MetaDomainConsts(93) - Located meta server address http://devapolloconfig-internal.piaoquantv.com for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
+2023-11-08 11:06:32.223 [main] INFO  com.tzld.piaoquan.recommend.server.Application(55) - Starting Application using Java 1.8.0_361 on dingyunpengdeMacBook-Pro.local with PID 76618 (/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes started by dingyunpeng in /Users/dingyunpeng/Desktop/code/pq)
+2023-11-08 11:06:32.225 [main] INFO  com.tzld.piaoquan.recommend.server.Application(664) - The following profiles are active: dev
+2023-11-08 11:06:33.375 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(250) - Multiple Spring Data modules found, entering strict repository configuration mode!
+2023-11-08 11:06:33.380 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(128) - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-11-08 11:06:33.434 [main] INFO  o.s.d.r.config.RepositoryConfigurationDelegate(188) - Finished Spring Data repository scanning in 46 ms. Found 0 Redis repository interfaces.
+2023-11-08 11:06:33.569 [main] INFO  o.s.c.annotation.ConfigurationClassPostProcessor(422) - Cannot enhance @Configuration bean definition 'com.ctrip.framework.apollo.spring.boot.ApolloAutoConfiguration' since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
+2023-11-08 11:06:33.676 [main] INFO  o.springframework.cloud.context.scope.GenericScope(288) - BeanFactory id=03118c26-269d-3b80-a0e4-c07ba057ad00
+2023-11-08 11:06:33.940 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:06:33.950 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker(350) - Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-11-08 11:06:34.224 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(108) - Tomcat initialized with port(s): 8080 (http)
+2023-11-08 11:06:34.232 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Initializing ProtocolHandler ["http-nio-8080"]
+2023-11-08 11:06:34.233 [main] INFO  org.apache.catalina.core.StandardService(173) - Starting service [Tomcat]
+2023-11-08 11:06:34.233 [main] INFO  org.apache.catalina.core.StandardEngine(173) - Starting Servlet engine: [Apache Tomcat/9.0.41]
+2023-11-08 11:06:34.315 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring embedded WebApplicationContext
+2023-11-08 11:06:34.315 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext(289) - Root WebApplicationContext: initialization completed in 2049 ms
+2023-11-08 11:06:34.946 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor(181) - Initializing ExecutorService 'applicationTaskExecutor'
+2023-11-08 11:06:34.977 [main] INFO  c.a.cloud.sentinel.SentinelWebAutoConfiguration(80) - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
+2023-11-08 11:06:35.303 [main] INFO  o.s.c.n.e.c.DiscoveryClientOptionalArgsConfiguration(87) - Eureka HTTP Client uses Jersey
+2023-11-08 11:06:36.173 [main] INFO  o.s.b.actuate.endpoint.web.EndpointLinksResolver(58) - Exposing 2 endpoint(s) beneath base path '/actuator'
+2023-11-08 11:06:36.259 [main] INFO  o.s.cloud.netflix.eureka.InstanceInfoFactory(67) - Setting initial instance status as: STARTING
+2023-11-08 11:06:36.276 [main] INFO  com.netflix.discovery.DiscoveryClient(372) - Initializing Eureka in region us-east-1
+2023-11-08 11:06:36.303 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(70) - Using JSON encoding codec LegacyJacksonJson
+2023-11-08 11:06:36.303 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(71) - Using JSON decoding codec LegacyJacksonJson
+2023-11-08 11:06:36.361 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(80) - Using XML encoding codec XStreamXml
+2023-11-08 11:06:36.363 [main] INFO  c.n.discovery.provider.DiscoveryJerseyProvider(81) - Using XML decoding codec XStreamXml
+2023-11-08 11:06:36.514 [main] INFO  c.n.d.shared.resolver.aws.ConfigClusterResolver(43) - Resolving eureka endpoints via configuration
+2023-11-08 11:06:36.524 [main] INFO  com.netflix.discovery.DiscoveryClient(1007) - Disable delta property : false
+2023-11-08 11:06:36.524 [main] INFO  com.netflix.discovery.DiscoveryClient(1008) - Single vip registry refresh property : null
+2023-11-08 11:06:36.524 [main] INFO  com.netflix.discovery.DiscoveryClient(1009) - Force full registry fetch : false
+2023-11-08 11:06:36.525 [main] INFO  com.netflix.discovery.DiscoveryClient(1010) - Application is null : false
+2023-11-08 11:06:36.525 [main] INFO  com.netflix.discovery.DiscoveryClient(1011) - Registered Applications size is zero : true
+2023-11-08 11:06:36.525 [main] INFO  com.netflix.discovery.DiscoveryClient(1013) - Application version is -1: true
+2023-11-08 11:06:36.525 [main] INFO  com.netflix.discovery.DiscoveryClient(1097) - Getting all instance registry info from the eureka server
+2023-11-08 11:06:36.674 [main] INFO  com.netflix.discovery.DiscoveryClient(1106) - The response status is 200
+2023-11-08 11:06:36.676 [main] INFO  com.netflix.discovery.DiscoveryClient(1321) - Starting heartbeat executor: renew interval is: 10
+2023-11-08 11:06:36.678 [main] INFO  com.netflix.discovery.InstanceInfoReplicator(60) - InstanceInfoReplicator onDemand update allowed rate per min is 4
+2023-11-08 11:06:36.680 [main] INFO  com.netflix.discovery.DiscoveryClient(492) - Discovery Client initialized at timestamp 1699412796679 with initial instances count: 5
+2023-11-08 11:06:36.685 [main] INFO  o.s.c.n.e.serviceregistry.EurekaServiceRegistry(41) - Registering application RECOMMEND-SERVER with eureka with status UP
+2023-11-08 11:06:36.686 [main] INFO  com.netflix.discovery.DiscoveryClient(1352) - Saw local status change event StatusChangeEvent [timestamp=1699412796686, current=UP, previous=STARTING]
+2023-11-08 11:06:36.688 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(873) - DiscoveryClient_RECOMMEND-SERVER/192.168.81.68:recommend-server:8080: registering service...
+2023-11-08 11:06:36.696 [main] INFO  org.apache.coyote.http11.Http11NioProtocol(173) - Starting ProtocolHandler ["http-nio-8080"]
+2023-11-08 11:06:36.732 [main] INFO  o.s.boot.web.embedded.tomcat.TomcatWebServer(220) - Tomcat started on port(s): 8080 (http) with context path '/recommend-sort'
+2023-11-08 11:06:36.735 [main] INFO  o.s.c.n.e.s.EurekaAutoServiceRegistration(144) - Updating port to 8080
+2023-11-08 11:06:36.765 [main] INFO  n.d.b.g.s.serverfactory.AbstractGrpcServerFactory(115) - Registered gRPC service: RecommendService, bean: recommendGrpcService, class: com.tzld.piaoquan.recommend.server.grpcservice.RecommendGrpcService
+2023-11-08 11:06:36.802 [DiscoveryClient-InstanceInfoReplicator-0] INFO  com.netflix.discovery.DiscoveryClient(882) - DiscoveryClient_RECOMMEND-SERVER/192.168.81.68:recommend-server:8080 - registration status: 204
+2023-11-08 11:06:41.845 [main] INFO  n.d.b.g.server.serverfactory.GrpcServerLifecycle(91) - gRPC Server started, listening on address: *, port: 9090
+2023-11-08 11:06:41.885 [main] INFO  com.tzld.piaoquan.recommend.server.Application(61) - Started Application in 46.104 seconds (JVM running for 51.816)
+2023-11-08 11:06:42.465 [RMI TCP Connection(1)-192.168.81.68] INFO  o.a.c.c.C.[Tomcat].[localhost].[/recommend-sort](173) - Initializing Spring DispatcherServlet 'dispatcherServlet'
+2023-11-08 11:06:42.467 [RMI TCP Connection(1)-192.168.81.68] INFO  org.springframework.web.servlet.DispatcherServlet(525) - Initializing Servlet 'dispatcherServlet'
+2023-11-08 11:06:42.470 [RMI TCP Connection(1)-192.168.81.68] INFO  org.springframework.web.servlet.DispatcherServlet(547) - Completed initialization in 2 ms
+2023-11-08 11:06:42.520 [RMI TCP Connection(2)-192.168.81.68] INFO  com.zaxxer.hikari.HikariDataSource(110) - HikariPool-1 - Starting...
+2023-11-08 11:06:43.121 [RMI TCP Connection(2)-192.168.81.68] INFO  com.zaxxer.hikari.HikariDataSource(123) - HikariPool-1 - Start completed.
+2023-11-08 11:11:36.533 [AsyncResolver-bootstrap-executor-0] INFO  c.n.d.shared.resolver.aws.ConfigClusterResolver(43) - Resolving eureka endpoints via configuration

+ 32 - 98
logs/recommend-server/log_warn.log

@@ -1,98 +1,32 @@
-2023-10-30 15:35:20.244 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:35:20.712 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:35:21.223 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:35:21.227 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
-2023-10-30 15:35:21.740 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:35:21.743 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
-2023-10-30 15:35:21.750 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
-2023-10-30 15:35:26.802 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5004 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
-2023-10-30 15:37:11.251 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:37:11.663 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:37:12.185 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:37:12.190 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
-2023-10-30 15:37:12.698 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:37:12.699 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
-2023-10-30 15:37:12.702 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
-2023-10-30 15:37:17.747 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5005 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
-2023-10-30 15:37:23.656 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
-2023-10-30 15:37:23.775 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
-2023-10-30 15:37:24.377 [main] WARN  o.s.c.a.AnnotationConfigApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration': Unsatisfied dependency expressed through field 'optionalArgs'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs<?>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
-2023-10-30 15:41:18.400 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:41:18.863 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:41:19.367 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:41:19.374 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
-2023-10-30 15:41:19.862 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:41:19.869 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
-2023-10-30 15:41:19.876 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
-2023-10-30 15:41:24.941 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
-2023-10-30 15:41:31.152 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
-2023-10-30 15:41:31.263 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
-2023-10-30 15:41:33.457 [main] WARN  o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger(82) - Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
-2023-10-30 15:41:33.581 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerException
-2023-10-30 15:56:15.811 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:56:16.308 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:56:16.782 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:56:16.786 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
-2023-10-30 15:56:17.278 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
-2023-10-30 15:56:17.286 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
-2023-10-30 15:56:17.292 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
-2023-10-30 15:56:22.354 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5004 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
-2023-10-30 15:56:28.618 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
-2023-10-30 15:56:28.727 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
-2023-10-30 15:56:30.898 [main] WARN  o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger(82) - Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
-2023-10-30 15:56:43.494 [boundedElastic-1] WARN  o.s.b.actuate.redis.RedisReactiveHealthIndicator(89) - Redis health check failed
-org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1553)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1461)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1247)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1230)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedReactiveConnection(LettuceConnectionFactory.java:989)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:445)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:98)
-	at reactor.core.publisher.MonoSupplier.call(MonoSupplier.java:85)
-	at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:227)
-	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
-	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
-	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
-	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
-	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
-	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:750)
-Caused by: org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
-	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:109)
-	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1459)
-	... 15 common frames omitted
-Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
-	at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78)
-	at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56)
-	at io.lettuce.core.AbstractRedisClient.getConnection(AbstractRedisClient.java:320)
-	at io.lettuce.core.RedisClient.connect(RedisClient.java:211)
-	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$1(StandaloneConnectionProvider.java:115)
-	at java.util.Optional.orElseGet(Optional.java:267)
-	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:115)
-	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.lambda$null$0(LettucePoolingConnectionProvider.java:97)
-	at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:211)
-	at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:201)
-	at org.apache.commons.pool2.BasePooledObjectFactory.makeObject(BasePooledObjectFactory.java:58)
-	at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:918)
-	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:431)
-	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:356)
-	at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:122)
-	at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:117)
-	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:103)
-	... 16 common frames omitted
-Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/127.0.0.1:6379
-Caused by: java.net.ConnectException: Connection refused
-	at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
-	at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:715)
-	at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:330)
-	at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
-	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:707)
-	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
-	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
-	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
-	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
-	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
-	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
-	at java.lang.Thread.run(Thread.java:750)
+2023-11-08 10:40:29.093 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5003 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 10:40:35.492 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
+2023-11-08 10:40:35.612 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 10:40:36.418 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'preViewedService': Unsatisfied dependency expressed through field 'redisTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.data.redis.core.RedisTemplate<java.lang.String, java.lang.Long>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
+2023-11-08 10:43:54.063 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 10:44:00.408 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
+2023-11-08 10:44:00.551 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 10:44:01.327 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'preViewedService': Unsatisfied dependency expressed through field 'redisTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.data.redis.core.RedisTemplate<java.lang.String, java.lang.Long>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
+2023-11-08 10:51:39.693 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5003 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 10:51:46.497 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 10:51:46.696 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 10:51:47.991 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'recommendService': Unsatisfied dependency expressed through field 'recallService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+2023-11-08 10:57:03.735 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5001 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 10:57:10.153 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 10:57:10.269 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 10:57:11.346 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'recommendService': Unsatisfied dependency expressed through field 'recallService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recallService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/recall/RecallService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
+2023-11-08 11:01:14.700 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5003 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 11:01:21.324 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 11:01:21.463 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 11:01:22.802 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'recommendService': Unsatisfied dependency expressed through field 'rankService'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.tzld.piaoquan.recommend.server.service.rank.RankService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
+2023-11-08 11:02:29.989 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 11:02:36.545 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 11:02:36.655 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 11:02:37.834 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recommendService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/RecommendService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+2023-11-08 11:05:10.129 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 11:05:16.452 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 11:05:16.574 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 11:05:17.579 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'recommendService' defined in file [/Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/com/tzld/piaoquan/recommend/server/service/RecommendService.class]: Initialization of bean failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 65 column 6 path $..
+2023-11-08 11:06:27.216 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5003 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-11-08 11:06:33.566 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server]' package. Please check your configuration.
+2023-11-08 11:06:33.694 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-11-08 11:06:36.166 [main] WARN  o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger(82) - Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.

+ 98 - 0
logs/recommend-server/warn/log-warn-2023-10-30.0.log

@@ -0,0 +1,98 @@
+2023-10-30 15:35:20.244 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:35:20.712 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:35:21.223 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:35:21.227 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
+2023-10-30 15:35:21.740 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:35:21.743 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
+2023-10-30 15:35:21.750 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
+2023-10-30 15:35:26.802 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5004 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-10-30 15:37:11.251 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:37:11.663 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:37:12.185 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:37:12.190 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
+2023-10-30 15:37:12.698 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:37:12.699 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
+2023-10-30 15:37:12.702 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
+2023-10-30 15:37:17.747 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5005 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-10-30 15:37:23.656 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
+2023-10-30 15:37:23.775 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-10-30 15:37:24.377 [main] WARN  o.s.c.a.AnnotationConfigApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration': Unsatisfied dependency expressed through field 'optionalArgs'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.netflix.discovery.AbstractDiscoveryClientOptionalArgs<?>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
+2023-10-30 15:41:18.400 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:41:18.863 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:41:19.367 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:41:19.374 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
+2023-10-30 15:41:19.862 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:41:19.869 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
+2023-10-30 15:41:19.876 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
+2023-10-30 15:41:24.941 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-10-30 15:41:31.152 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
+2023-10-30 15:41:31.263 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-10-30 15:41:33.457 [main] WARN  o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger(82) - Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
+2023-10-30 15:41:33.581 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext(596) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerException
+2023-10-30 15:56:15.811 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:56:16.308 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:56:16.782 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:56:16.786 [main] WARN  c.c.f.apollo.internals.AbstractConfigRepository(29) - Sync config failed, will retry. Repository class com.ctrip.framework.apollo.internals.LocalFileConfigRepository, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties]
+2023-10-30 15:56:17.278 [main] WARN  c.c.f.apollo.internals.LocalFileConfigRepository(167) - Sync config from upstream repository class com.ctrip.framework.apollo.internals.RemoteConfigRepository failed, reason: Load Apollo Config failed - appId: recommend-sort, cluster: default, namespace: application, url: http://192.168.204.179:8080/configs/recommend-sort/default/application?ip=192.168.80.15 [Cause: [status code: 404] Could not find config for namespace - appId: recommend-sort, cluster: default, namespace: application, please check whether the configs are released in Apollo!]
+2023-10-30 15:56:17.286 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(61) - Init Apollo Local Config failed - namespace: application, reason: Load config from local config failed! [Cause: Cannot read from local cache file /Users/dingyunpeng/Desktop/code/pq/recommend-server/recommend-server-service/target/classes/config-cache/recommend-sort+default+application.properties].
+2023-10-30 15:56:17.292 [main] WARN  com.ctrip.framework.apollo.internals.DefaultConfig(95) - Could not load config for namespace application from Apollo, please check whether the configs are released in Apollo! Return default value now!
+2023-10-30 15:56:22.354 [main] WARN  org.springframework.boot.StartupInfoLogger(117) - InetAddress.getLocalHost().getHostName() took 5004 milliseconds to respond. Please verify your network configuration (macOS machines may need to add entries to /etc/hosts).
+2023-10-30 15:56:28.618 [main] WARN  org.mybatis.spring.mapper.ClassPathMapperScanner(44) - No MyBatis mapper was found in '[com.tzld.piaoquan.recommend.server.dao]' package. Please check your configuration.
+2023-10-30 15:56:28.727 [main] WARN  o.s.boot.context.properties.PropertySourcesDeducer(66) - Multiple PropertySourcesPlaceholderConfigurer beans registered [propertySourcesPlaceholderConfigurer, org.springframework.context.support.PropertySourcesPlaceholderConfigurer], falling back to Environment
+2023-10-30 15:56:30.898 [main] WARN  o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger(82) - Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
+2023-10-30 15:56:43.494 [boundedElastic-1] WARN  o.s.b.actuate.redis.RedisReactiveHealthIndicator(89) - Redis health check failed
+org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1553)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1461)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1247)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1230)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedReactiveConnection(LettuceConnectionFactory.java:989)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:445)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:98)
+	at reactor.core.publisher.MonoSupplier.call(MonoSupplier.java:85)
+	at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:227)
+	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
+	at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
+	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
+	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
+	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
+	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:750)
+Caused by: org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
+	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:109)
+	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1459)
+	... 15 common frames omitted
+Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379
+	at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78)
+	at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56)
+	at io.lettuce.core.AbstractRedisClient.getConnection(AbstractRedisClient.java:320)
+	at io.lettuce.core.RedisClient.connect(RedisClient.java:211)
+	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$1(StandaloneConnectionProvider.java:115)
+	at java.util.Optional.orElseGet(Optional.java:267)
+	at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:115)
+	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.lambda$null$0(LettucePoolingConnectionProvider.java:97)
+	at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:211)
+	at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:201)
+	at org.apache.commons.pool2.BasePooledObjectFactory.makeObject(BasePooledObjectFactory.java:58)
+	at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:918)
+	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:431)
+	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:356)
+	at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:122)
+	at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:117)
+	at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:103)
+	... 16 common frames omitted
+Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/127.0.0.1:6379
+Caused by: java.net.ConnectException: Connection refused
+	at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
+	at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:715)
+	at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:330)
+	at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
+	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:707)
+	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
+	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
+	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
+	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
+	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+	at java.lang.Thread.run(Thread.java:750)

+ 0 - 11
recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/client/HelloClient.java

@@ -1,11 +0,0 @@
-package com.tzld.piaoquan.recommend.server.client;
-
-import org.springframework.stereotype.Component;
-
-/**
- * @author dyp
- */
-@Component
-public class HelloClient {
-
-}

+ 2 - 3
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/Application.java

@@ -1,16 +1,15 @@
 package com.tzld.piaoquan.recommend.server;
 
-import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
 import org.springframework.context.annotation.ComponentScan;
 
 @SpringBootApplication
-@MapperScan("com.tzld.piaoquan.recommend.server.dao")
 @ComponentScan({
         "com.tzld.piaoquan.recommend.server.service",
-        "com.tzld.piaoquan.recommend.server.grpcservice"
+        "com.tzld.piaoquan.recommend.server.grpcservice",
+        "com.tzld.piaoquan.recommend.server.config"
 })
 @EnableEurekaClient
 public class Application {

+ 14 - 6
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/PreViewedService.java

@@ -3,8 +3,11 @@ package com.tzld.piaoquan.recommend.server.service;
 import com.google.common.cache.CacheBuilder;
 import com.google.common.cache.CacheLoader;
 import com.google.common.cache.LoadingCache;
+import com.tzld.piaoquan.recommend.server.model.Video;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.math.NumberUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.Cursor;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -14,6 +17,7 @@ import org.springframework.stereotype.Service;
 import java.io.IOException;
 import java.util.Collections;
 import java.util.HashSet;
+import java.util.List;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
@@ -24,7 +28,7 @@ import java.util.concurrent.TimeUnit;
 @Slf4j
 public class PreViewedService {
     @Autowired
-    private RedisTemplate<String, Long> redisTemplate;
+    private RedisTemplate<String, String> redisTemplate;
 
     public static final String KEY_PRE_VIEWED_FORMAT = "previewed:videos:%s:%s";
 
@@ -37,10 +41,10 @@ public class PreViewedService {
                 @Override
                 public Set<Long> load(String key) throws Exception {
                     Set<Long> result = new HashSet<>();
-                    Cursor<Long> cursor = redisTemplate.opsForSet().scan(key, ScanOptions.NONE);
+                    Cursor<String> cursor = redisTemplate.opsForSet().scan(key, ScanOptions.NONE);
                     try {
                         while (cursor != null && cursor.hasNext()) {
-                            Long videoId = cursor.next();
+                            Long videoId = NumberUtils.toLong(cursor.next(), 0);
                             result.add(videoId);
                         }
                     } catch (Exception e) {
@@ -58,12 +62,16 @@ public class PreViewedService {
                 }
             });
 
-    public void updateCache(int appType, String mid, Long[] videoIds) {
+    public void updateCache(int appType, String mid, List<Video> videos) {
         if (StringUtils.isBlank(mid)
-                || videoIds == null
-                || videoIds.length == 0) {
+                || CollectionUtils.isEmpty(videos)) {
             return;
         }
+        // 1 更新预曝光数据 过期时间 30min
+        String[] videoIds = new String[videos.size()];
+        for (int i = 0; i < videoIds.length; i++) {
+            videoIds[i] = String.valueOf(videos.get(i).getVideoId());
+        }
         String key = String.format(KEY_PRE_VIEWED_FORMAT, appType, mid);
         redisTemplate.opsForSet().add(key, videoIds);
         redisTemplate.expire(key, 30, TimeUnit.MINUTES);

+ 4 - 8
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/RecommendService.java

@@ -53,14 +53,15 @@ public class RecommendService {
 
     private Map<Integer, String> ab_initial_config_map = new HashMap<>();
 
-    @ApolloJsonValue("ab_exp_code")
+    @ApolloJsonValue("${ab_exp_code:{}}")
     private Map<String, Map<String, String>> abExpCodeMap = new HashMap<>();
 
-    @ApolloJsonValue("app_ab_code")
+    @ApolloJsonValue("${app_ab_code:{}}")
     private Map<String, Map<String, Map<String, String>>> appAbCodeMap = new HashMap<>();
 
     private int[] flowPoolIdList = {7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
 
+
     @Autowired
     private FlowPoolConfigService flowPoolConfigService;
 
@@ -363,13 +364,8 @@ public class RecommendService {
                 || CollectionUtils.isEmpty(videos)) {
             return;
         }
-        // 1 更新预曝光数据 过期时间 30min
-        Long[] videoIds = new Long[videos.size()];
-        for (int i = 0; i < videoIds.length; i++) {
-            videoIds[i] = videos.get(i).getVideoId();
-        }
 
-        preViewedService.updateCache(request.getAppType(), request.getMid(), videoIds);
+        preViewedService.updateCache(request.getAppType(), request.getMid(), videos);
         updateLastVideoCache(request, param, videos);
         updateFlowPoolCache(request, param, videos);
 

+ 1 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/ViewedService.java

@@ -28,7 +28,7 @@ public class ViewedService {
     private Map<Integer, List<Integer>> viewedTypesMap = new HashMap<>();
     private List<Integer> defaultViewedTypes = Lists.newArrayList(1, 6, 7);
 
-    @Value("video.filter.url")
+    @Value("${video.filter.url:}")
     private String videoFilterUrl;
 
     private CloseableHttpClient clients = HttpClients.createDefault();

+ 4 - 3
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/flowpool/FlowPoolService.java

@@ -5,6 +5,7 @@ import com.tzld.piaoquan.recommend.server.service.ThreadPoolFactory;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.math.NumberUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
@@ -26,7 +27,7 @@ import static com.tzld.piaoquan.recommend.server.service.flowpool.FlowPoolConsta
 @Slf4j
 public class FlowPoolService {
     @Autowired
-    private RedisTemplate<String, Integer> redisTemplate;
+    private RedisTemplate<String, String> redisTemplate;
     @Autowired
     private FlowPoolConfigService flowPoolConfigService;
 
@@ -199,11 +200,11 @@ public class FlowPoolService {
         List<String> keys = entries.stream()
                 .map(v -> String.format(localDistributeCountFormat, v.getKey(), v.getValue()))
                 .collect(Collectors.toList());
-        List<Integer> counts = redisTemplate.opsForValue().multiGet(keys);
+        List<String> counts = redisTemplate.opsForValue().multiGet(keys);
 
         Map<Long, Integer> result = new HashMap<>();
         for (int i = 0; i < entries.size(); i++) {
-            result.put(entries.get(i).getKey(), counts.get(i));
+            result.put(entries.get(i).getKey(), NumberUtils.toInt(counts.get(i), 0));
         }
         return result;
     }

+ 2 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/rank/RankService.java

@@ -10,6 +10,7 @@ import org.apache.commons.lang3.RandomUtils;
 import org.apache.commons.lang3.math.NumberUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -17,6 +18,7 @@ import java.util.stream.Collectors;
 /**
  * @author dyp
  */
+@Service
 public class RankService {
     @Autowired
     private RedisTemplate<String, String> redisTemplate;

+ 1 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/recall/RecallService.java

@@ -30,7 +30,7 @@ public class RecallService implements ApplicationContextAware {
     private final Map<String, RecallStrategy> strategyMap = new HashMap<>();
     private ApplicationContext applicationContext;
     private ExecutorService pool = ThreadPoolFactory.recallPool();
-    @ApolloJsonValue("city_code")
+    @ApolloJsonValue("${city_code:[]}")
     private Set<String> cityCodes;
 
     @PostConstruct

+ 1 - 1
recommend-server-service/src/main/resources/application-dev.yml

@@ -61,7 +61,7 @@ aliyun:
     endpoint: cn-hangzhou.log.aliyuncs.com
     accessKeyId: LTAIP6x1l3DXfSxm
     accessKeySecret: KbTaM9ars4OX3PMS6Xm7rtxGr1FLon
-    project: ms-recommend-sort-test
+    project: ms-recommend-server-test
 
 logging:
   file:

+ 1 - 1
recommend-server-service/src/main/resources/application-pre.yml

@@ -61,4 +61,4 @@ aliyun:
     endpoint: cn-hangzhou-intranet.log.aliyuncs.com
     accessKeyId: LTAIP6x1l3DXfSxm
     accessKeySecret: KbTaM9ars4OX3PMS6Xm7rtxGr1FLon
-    project: ms-recommend-sort
+    project: ms-recommend-server

+ 1 - 1
recommend-server-service/src/main/resources/application-prod.yml

@@ -61,4 +61,4 @@ aliyun:
     endpoint: cn-hangzhou-intranet.log.aliyuncs.com
     accessKeyId: LTAIP6x1l3DXfSxm
     accessKeySecret: KbTaM9ars4OX3PMS6Xm7rtxGr1FLon
-    project: ms-recommend-sort
+    project: ms-recommend-server

+ 1 - 1
recommend-server-service/src/main/resources/application-test.yml

@@ -61,4 +61,4 @@ aliyun:
     endpoint: cn-hangzhou-intranet.log.aliyuncs.com
     accessKeyId: LTAIP6x1l3DXfSxm
     accessKeySecret: KbTaM9ars4OX3PMS6Xm7rtxGr1FLon
-    project: ms-recommend-sort-test
+    project: ms-recommend-server-test