- 浏览: 2654359 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
### 问题1报错,应用无法启动
org.springframework.core.io.ClassPathResource.getInputStream()抛出异常:
FileNotFoundException:org/springframework/boot/actuate/autoconfigure/HealthIndicatorAutoConfiguration.class cannot be opened because it does not exist
### 原因分析
HealthIndicatorAutoConfiguration 在spring-boot不同版本路径变了
- spring-boot1.x: org.springframework.boot.actuate.autoconfigure.HealthIndicatorAutoConfiguration
- spring-boot2.x:org.springframework.boot.actuate.autoconfigure.health.HealthIndicatorAutoConfiguration
通过debug发现,源头在 HystrixAutoConfiguration,代码如下:
```java
import org.springframework.boot.actuate.autoconfigure.HealthIndicatorAutoConfiguration;
@Configuration
@ConditionalOnClass({ Hystrix.class, HealthIndicator.class })
@AutoConfigureAfter({ HealthIndicatorAutoConfiguration.class })
public class HystrixAutoConfiguration {
}
```
HystrixAutoConfiguration依赖的是spring-boot1.x版本的HealthIndicatorAutoConfiguration,通过升级spring-cloud版本,问题解决。
### 问题2
同样的问题出现在 org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.class
需要分析出 org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration被谁用到的。
通过debug发现,在 AutoConfigurationSorter.addToClasses() 发现是org.springframework.cloud.netflix.ribbon.RibbonAutoConfiguration引入的,代码如下:
```java
package org.springframework.cloud.netflix.ribbon;
@Configuration
@Conditional(RibbonAutoConfiguration.RibbonClassesConditions.class)
@RibbonClients
@AutoConfigureAfter(name = "org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration")
@AutoConfigureBefore({LoadBalancerAutoConfiguration.class, AsyncLoadBalancerAutoConfiguration.class})
@EnableConfigurationProperties({RibbonEagerLoadProperties.class, ServerIntrospectorProperties.class})
public class RibbonAutoConfiguration {
}
```
可以发现是同样的原因,实际上我们不会使用到RibbonAutoConfiguration,排除掉spring-cloud-netflix-ribbon,问题解决
org.springframework.core.io.ClassPathResource.getInputStream()抛出异常:
FileNotFoundException:org/springframework/boot/actuate/autoconfigure/HealthIndicatorAutoConfiguration.class cannot be opened because it does not exist
### 原因分析
HealthIndicatorAutoConfiguration 在spring-boot不同版本路径变了
- spring-boot1.x: org.springframework.boot.actuate.autoconfigure.HealthIndicatorAutoConfiguration
- spring-boot2.x:org.springframework.boot.actuate.autoconfigure.health.HealthIndicatorAutoConfiguration
通过debug发现,源头在 HystrixAutoConfiguration,代码如下:
```java
import org.springframework.boot.actuate.autoconfigure.HealthIndicatorAutoConfiguration;
@Configuration
@ConditionalOnClass({ Hystrix.class, HealthIndicator.class })
@AutoConfigureAfter({ HealthIndicatorAutoConfiguration.class })
public class HystrixAutoConfiguration {
}
```
HystrixAutoConfiguration依赖的是spring-boot1.x版本的HealthIndicatorAutoConfiguration,通过升级spring-cloud版本,问题解决。
### 问题2
同样的问题出现在 org/springframework/cloud/netflix/eureka/EurekaClientAutoConfiguration.class
需要分析出 org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration被谁用到的。
通过debug发现,在 AutoConfigurationSorter.addToClasses() 发现是org.springframework.cloud.netflix.ribbon.RibbonAutoConfiguration引入的,代码如下:
```java
package org.springframework.cloud.netflix.ribbon;
@Configuration
@Conditional(RibbonAutoConfiguration.RibbonClassesConditions.class)
@RibbonClients
@AutoConfigureAfter(name = "org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration")
@AutoConfigureBefore({LoadBalancerAutoConfiguration.class, AsyncLoadBalancerAutoConfiguration.class})
@EnableConfigurationProperties({RibbonEagerLoadProperties.class, ServerIntrospectorProperties.class})
public class RibbonAutoConfiguration {
}
```
可以发现是同样的原因,实际上我们不会使用到RibbonAutoConfiguration,排除掉spring-cloud-netflix-ribbon,问题解决
发表评论
-
log4j 和slf4j的 类冲突解决
2018-07-14 16:11 19801. 检查 log4j 和slf4j的冲突 pub ... -
HikariPool-1 - Connection is not available, request timed out after
2018-05-07 19:13 6678在开发中遇到 HikariPool-1 - Conn ... -
java.io.StreamCorruptedException: invalid stream header: EFBFBDEF
2018-05-03 16:54 2408Java代码 publi ... -
log4j问题总结-加载配置文件
2014-08-20 16:34 1063今天遇到log4j的log4j.properties没有生效 ... -
一个诡异的类冲突错误排查记录
2014-08-13 10:44 815今天遇到一个问题排查了很久,记录一下。 问题原因,日常环境 ... -
tomcat7.0.26的连接数控制bug的问题排查
2014-04-23 19:51 1709今儿线上一台机器,监控一直在告警, mtophost[CM ... -
tomcat,jboss,jetty访问出现404错误问题记录
2014-04-21 19:51 1692原因是WEB-INF下面缺少jboss-web.xml ... -
记录Hadoop native libraries无法load的问题
2014-04-10 19:45 2298今天遇到一个错误,在本地往Hadoop写文件的时候报了一个错 ... -
Exception性能问题
2014-01-24 22:25 13071.从Exception往上介绍相关结构、代码 ... -
spring加载xml去远程获取dtd验证xml的问题
2014-01-24 11:57 899最近遇到spring 加载xml去远程获取dtd,但外网不 ... -
hbase查询超时导致的错误
2013-12-25 19:53 2715今天上线跑一个hbase程序出现如下错误: org.ap ... -
hbase无法启动问题
2013-12-24 23:53 928今天遇到hbase无法启动,找了很久,才发现可能是data ... -
web.xml配置注意点
2013-12-19 20:29 6391. servlet启动初始化 servlet默认只有访 ... -
Linux服务器Cache占用过多内存导致系统内存不足问题的排查解决
2013-12-17 23:22 3913作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章 ... -
linger close用法
2013-12-13 14:18 964Linux下tcp连接断开的时候调用close()函数,有 ... -
log4j-over-slf4的log4j Loger加载问题
2013-12-11 00:19 5780log4j-over-slf4是通过定义和log4j同包名 ... -
log4j,slf4j,logback问题总结
2013-12-10 18:12 6529ls4j初始化过程参考:l ... -
maven 小结(打包和单元测试)
2013-12-04 11:53 6861. 如何把一个jar和他依赖的包打包成一个 使用mave ... -
solr load比较高
2013-12-02 09:50 1069最近solr的load比较高,通过jstack查看: 写 ... -
ConcurrentHashMap的putIfAbsent总结
2013-11-25 14:51 3023最近在设计一个可缓存的类,发现putIfAbsent使用还 ...
相关推荐
在实际开发中,Spring Cloud Admin 可以帮助团队更有效地管理和运维分布式系统,提高问题排查效率。通过监控各个微服务的状态,可以及时发现并处理故障,保证系统的稳定运行。 对于 Java 开发者来说,理解 Spring ...
在开发基于Spring Boot和Spring Cloud的应用程序时,经常会遇到各种挑战,其中之一就是“unknown”问题。...总的来说,理解和排查此类问题需要对Spring Boot和Spring Cloud的架构、依赖管理和IDEA的使用有深入理解。
7. **分布式追踪**:Spring Cloud Sleuth与Zipkin结合,提供了分布式系统追踪的能力,帮助开发者了解请求在各个服务间的流转情况,便于排查问题。在项目中,可能通过Sleuth收集日志信息,并将它们发送到Zipkin服务器...
- **监控与日志**:集成监控工具如Prometheus和Grafana,以及日志收集系统如ELK或Logstash,以便实时监控系统状态和问题排查。 - **持续集成/持续部署(CI/CD)**:采用Jenkins或GitLab CI/CD,自动化构建和部署。 ...
3. 监控与日志:集成Cloudfoundry的日志和监控系统,便于对应用的运行状态进行实时监控和问题排查。 总结来说,Spring Cloud Cloudfoundry的集成为开发者提供了强大的工具,让在Cloudfoundry平台上构建和管理微服务...
Sleuth则是分布式追踪解决方案,它集成了Zipkin,能够跟踪微服务间的调用链路,帮助开发者在复杂的微服务环境中定位问题,提高故障排查效率。 以上组件共同构成了Spring Cloud的核心骨架,它们相互协作,构建出一个...
7. **日志与调试**:学习如何配置OpenFeign的日志输出,帮助在开发和问题排查时获取更多信息。 通过以上分析,你可以深入理解Spring Cloud OpenFeign的工作原理,掌握如何在微服务架构中使用它来构建高效、可靠的...
- **审计追踪**:记录应用的访问日志,便于问题排查。 #### 五、Spring Cloud核心知识点详解 1. **Eureka服务发现**: - **服务注册与发现**:Eureka Server作为服务注册中心,各个服务启动后向Eureka Server...
Spring Cloud Sleuth 是一款针对微服务架构中的服务链路追踪工具,主要用于解决分布式系统中服务调用链路的追踪问题。通过引入Sleuth,开发者可以在微服务间进行追踪,从而更加清晰地了解请求在各个服务间的流转情况...
这样,我们可以在ElasticSearch中收集和分析微服务间的调用链路,帮助优化系统性能和排查问题。 6. **Elasticsearch的监控和健康检查**: 在Spring Boot应用中,可以配置Actuator端点来监控ElasticSearch的健康...
Spring Cloud Zipkin 是一个流行的链路追踪工具,它与 Spring Boot 和 Spring Cloud 结合使用,可以轻松地在微服务架构中实现分布式系统的可观测性。本教程将介绍如何整合 Spring Cloud 与 Zipkin 来实现链路追踪,...
6. **监控与日志**:Nacos和Dubbo都提供了丰富的监控和日志接口,可以与Prometheus、ELK Stack等工具集成,实现服务的性能监控和问题排查。 7. **服务安全**:整合Spring Security或OAuth2,可以为服务间通信添加...
8. **日志分析**:与腾讯云的日志服务对接,便于收集、分析和查询应用日志,提升问题排查效率。 9. **监控与报警**:通过与腾讯云监控系统的集成,可以实时监控服务的运行状态,设置报警阈值,及时发现并解决问题。...
8. **日志监控**: 为了便于后期排查问题和性能优化,项目通常会集成日志系统,记录支付过程中的详细信息。这有助于追踪支付状态,及时发现并解决问题。 9. **测试与部署**: 项目在接入微信和支付宝支付渠道后,需要...
Sleuth 是 Spring Cloud 的一个子项目,用于生成和收集微服务间的调用链日志,Zipkin 是一个分布式的追踪系统,它收集 Sleuth 产生的数据,提供实时的服务性能监控和故障排查。 9. **Cloud Gateway**:新一代 API ...
根据提供的文件信息,我们可以深入探讨与Spring Cloud相关的知识点。尽管文档标题和描述较为简单,但可以从这些信息中提炼出关于Spring Cloud项目的源码下载、Spring Cloud的基本概念、用途及其核心组件等方面的内容...
- **故障排查**:列出可能出现的问题及解决方案,帮助开发者快速定位和解决问题。 了解并掌握这些文档中的知识,可以帮助开发者更好地理解和使用Spring Cloud,构建出健壮、可扩展的微服务架构。对于Java开发者来说...
- **问题排查**:通过 Sleuth 追踪数据定位生产环境的问题,提供实例解析。 通过对 Spring Cloud Sleuth 3.1.6 源码的深入理解,开发者不仅可以掌握 Sleuth 的工作原理,还能更好地利用其功能,提升微服务系统的可...
7. **监控与日志**:Actuator监控服务状态,日志系统记录运行信息,便于问题排查。 通过以上介绍,我们可以看出,Spring Boot Cloud项目是一个复杂且功能强大的微服务系统。理解并掌握这些核心组件,对于构建健壮、...
7. **故障排查**:当性能下降时,如何定位问题,调试配置服务器和wa-tolls应用。 8. **最佳实践**:学习和实施性能优化策略,如缓存策略、配置优化、数据结构选择等。 9. **代码优化**:对wa-tolls应用进行代码...