- 博客(17)
- 收藏
- 关注
转载 spring boot 2.x静态资源会被HandlerInterceptor拦截的原因和解决方法
在spring boot 1.5.x中,resources/static目录下的静态资源可以直接访问,并且访问路径上不用带static,比如静态资源放置位置如下图所示:那么访问静态资源的路径可以是:http://localhost:8080/views/demoindex.html...
2018-04-13 21:20:00
2610
转载 JVM GC算法、GC收集器简介
一些术语:STW:Stop The World,指GC回收时暂停所有用户线程的现象并发:指GC线程与用户线程并发执行,不会产生STW并行:指GC线程是多线程并行执行,会产生STWGC算法标记-清除算法分为标记和清除两个阶段(Mark-Sweep),这个算法是最基础...
2018-03-01 14:36:00
223
转载 spring-cloud-zuul动态路由的实现
先说明两个概念:路由配置和路由规则,路由配置是指配置某请求路径路由到指定的目的地址;路由规则是指匹配到路由配置之后,再进行自定义的规则判断,规则判断可以更改路由目的地址zuul默认的路由都是在properties里配置的,如果需要动态路由,需要自己实现,由上面的源码分析可以看出,实现动态路由...
2018-02-12 15:46:00
477
转载 spring-cloud源码解析-zuul路由的部分源码解析
版本:spring-boot:1.5.3.RELEASEspring cloud:Dalston.RELEASE(1.3.0.RELEASE)路由定位器(RouteLocator)主要作用:获取路由配置和匹配请求地址的路由地址配置所在jar包:spring-cloud-n...
2018-02-12 15:44:00
207
转载 spring-cloud源码解析-hystrix的基本介绍和配置属性说明
Hystrix简单介绍Hystrix是一个延迟和容错库,目的是用来隔离远程系统、服务和第三方库的调用以及停止故障传播,并在无法完全避免发生故障的复杂的分布式系统中实现弹性Hystrix主要的作用隔离(线程隔离、信号量隔离):主要是限制调用分布式服务的资源,避免个别服务出现问...
2018-02-11 17:03:00
217
转载 高并发&高可用系统应对策略的一些思考
说明:仅仅是自己的一些观点和思考,如有问题欢迎指正文中【】内提到的spring boot starter是自己封装的,地址:https://gitee.com/itopener/springboot解耦神器:MQMQ是分布式架构中的解耦神器,应用非常普遍。有些分布式事务也是...
2018-02-07 19:08:00
293
转载 spring boot + spring cache 实现两级缓存(redis + caffeine)
spring boot中集成了spring cache,并有多种缓存方式的实现,如:Redis、Caffeine、JCache、EhCache等等。但如果只用一种缓存,要么会有较大的网络消耗(如Redis),要么就是内存占用太大(如Caffeine这种应用内存缓存)。在很多场景下,可以结合起...
2018-01-31 16:12:00
1628
转载 代码结构及一些代码规范建议
一些感悟代码结构和规范关系到项目的可持续维护以及维护的周期,非常重要,但真正重视并落地的很少经典的MVC模式一般都能说出来,但真正落地到项目代码结构的时候,却缺少思考当写代码和找代码让人感觉别扭的时候,就该考虑如何去优化了一切皆对象,在规划代码结构的时候也需要有面向对象的思维方式...
2018-01-23 16:52:00
439
转载 [redis分布式锁]redisson分布式锁的实现及spring-boot-starter封装
本文主要介绍redisson中对于可重入锁、读写锁、公平锁的实现,并利用spring AOP封装成基于方法级别的注解使用方式。关于redisson的介绍及其spring boot starter的封装参考:spring boot redisson starter的封装和使用redisson...
2018-01-10 11:14:00
1038
转载 spring boot redisson starter的封装和使用
主要内容:Redisson简介Redisson的配置方式spring boot starter的封装和使用一.Redisson简介简单来说,Redisson其实就是一个Redis的客户端jar包,使用基于NIO的netty开发,更加注重分布式场景应用的封装,比如分布式锁、异步流...
2018-01-05 18:25:00
2381
转载 spring boot redis分布式锁
随着现在分布式架构越来越盛行,在很多场景下需要使用到分布式锁。分布式锁的实现有很多种,比如基于数据库、 zookeeper 等,本文主要介绍使用 Redis 做分布式锁的方式,并封装成spring boot starter,方便使用一. Redis 分布式锁的实现以及存在的问题锁是针对...
2018-01-02 15:39:00
515
转载 spring cloud源码解析-zuul核心过滤器
过滤器在Spring Cloud Zuul中,过滤器的顶级接口是IZuulFilter,其下有个抽象类ZuulFilter,过滤器必须包含4个基本特征:执行条件(shouldFilter)、具体操作(run)、过滤类型(filterType)、执行顺序(filterOrder)。具体抽象方...
2017-12-26 16:09:00
127
转载 spring boot使用sharding jdbc的配置方式
说明要排除DataSourceAutoConfiguration,否则多数据源无法配置@SpringBootApplication@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})public ...
2017-12-26 15:24:00
729
转载 spring cloud eureka部分源码分析及微服务管理功能
eureka原生的管理页面只有查看服务节点和一些信息,没有动态启用停用服务节点的功能一. EurekaClient获取所有注册的服务eureka客户端会加载一个定时任务去获取注册中心的服务,任务的配置在:com.netflix.discovery.DiscoveryClient,刷新的...
2017-12-26 13:49:00
172
转载 spring-boot + rabbitmq消息手动确认模式的几点说明(重试机制)
前提:使用rabbitmq的手动确认消息的模式消息手动确认模式的几点说明监听的方法内部必须使用channel进行消息确认,包括消费成功或消费失败如果不手动确认,也不抛出异常,消息不会自动重新推送(包括其他消费者),因为对于rabbitmq来说始终没有接收到消息消费是否成功的确...
2017-12-26 13:39:00
4036
转载 spring-boot-rabbitmq动态管理
使用spring boot + rabbitmq的时候,在开发过程中,可能会想要临时停用/启用监听,或修改监听消费者数量。如果每次修改都重启比较浪费时间,所以研究了一下不停机就启用停用监听或修改一些配置一. 关于rabbitmq监听的配置配置属性类:RabbitProperties,...
2017-12-26 13:27:00
603
转载 spring boot跨域处理
使用spring boot开发web应用时,有时会需要对跨域访问进行处理。本文包含了服务端跨域和客户端跨域的处理,对于json数据的处理包含了fastjson和jackson两种方式一. 客户端跨域对于客户端跨域,原理这里就不做详解,大家熟知的应该是jquery jsonp请求。这种...
2017-12-05 15:12:00
159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人