随笔分类 -  源码解析

摘要:1、注解TxcTransaction2、在其注解接口附近查找aop配置:TransactionAspect3、runTransaction是在执行事务业务代码时的包装逻辑4、transactionServiceExecutor.transactionRunning(info);5、获取本地分布式事务 阅读全文
posted @ 2019-08-22 10:51 剑握在手 阅读(889) 评论(0) 推荐(0) 编辑
摘要:在使用E版本的Spring Cloud Netflix Zuul内置的Ribbon重试功能时,发现Ribbon有一个很精妙的特性: 如果某个服务的某个实例经常需要重试,Ribbon则会在自己维护的一个缓存(serverStatsCache)里将其临时标记为不可用(isCircuitBreakerTr 阅读全文
posted @ 2019-01-29 15:29 剑握在手 阅读(491) 评论(1) 推荐(0) 编辑
摘要:代码使用SpringCloud版本E3 业务场景: 今天遇到一个业务场景,要求根据服务名获取当前微服务集群中所有的对应服务实例的IP和端口,通过分析源码推算出了写法。 原理简述: 如果代码中引入了spring-cloud-netflix-core(版本1.4.4.RELEASE),则在代码初始化的时 阅读全文
posted @ 2018-08-30 14:50 剑握在手 阅读(6697) 评论(0) 推荐(0) 编辑
摘要:在包路径:org.springframework.cloud.netflix.zuul.filters 下,新建类SimpleRouteLocator,取代jar包中的类。内容如下: 其中的164-171行,让zuul支持了如下配置: 通过/vod2/two路径,可以访问到 /all/two 注意, 阅读全文
posted @ 2018-06-20 16:22 剑握在手 阅读(881) 评论(0) 推荐(0) 编辑
摘要:Spring Cloud 版本: Dalston.SR5 今天使用Zuul发现一个和动态刷新相关的问题,动态刷新使用的是 /bus/refresh,即我的Zuul连着一个Rabbitmq,我这里是使用的总线刷新的方式,普通的刷新/refresh应该也是可以再现这个坑的。 我一共有两个服务,服务名分别 阅读全文
posted @ 2018-05-14 16:53 剑握在手 阅读(6607) 评论(1) 推荐(0) 编辑
摘要:只需在springboot的配置文件中添加以下内容即可: 该配置是一个eureka客户端的配置,并且该客户端使用了ribbon。 配置只是标记了该服务在注册中心的zone,当该服务调用其它服务时,ribbon默认会优先从zone相同的服务中选择被调用对象。 ————————————————以下内容都 阅读全文
posted @ 2018-01-17 16:18 剑握在手 阅读(2158) 评论(0) 推荐(0) 编辑
摘要:项目用的是springmvc+spring+mybatis框架, 配置日志的时候非常简单,仅仅是把commons-logging、log4j,还有slf4j-log4j三个日志相关的jar包导入项目,然后在classpath中加个log4j.properties的配置文件即可。 但是你有没有想过Lo 阅读全文
posted @ 2017-03-16 18:01 剑握在手 阅读(409) 评论(0) 推荐(0) 编辑

返回顶部↑
点击右上角即可分享
微信分享提示