SpringBoot/SpringCloud
文章平均质量分 93
xiaolongleee
玩儿大数据和Spring的
展开
-
Spring Boot源码分析之启动流程
Spring Boot将一个典型的Spring应用的启动流程“模版化”。每个部分使用“可插拔”的模块进行组装。在没有特殊需求的情况下,默认的启动执行流程即可满足需求。如有特殊需求,Spring Boot开放了一系列不同类型的扩展点,我们可以通过这些扩展点对Spring Boot程序的启动,执行和关闭过程进行扩展。Spring Boot的启动类的main方法中最重要的一句为:SpringApplic...原创 2018-03-16 18:41:33 · 152 阅读 · 0 评论 -
在SpringBoot使用Redis session时如何动态设定session过期时间
最近在做一个新项目的架构时遇到了一个问题:我们使用redis sentinel来保存session,我们在SpringBoot中集成了spring-session-data-redis来实现分布式session。这里面有@EnableRedisHttpSession注解参数maxInactiveIntervalInSeconds来设定超时时间。但如何动态的通过配置文件来设定这个超时时间?这里记录一...原创 2018-04-03 15:53:33 · 21819 阅读 · 2 评论 -
创建一个自定义的Spring Boot Starter
简单记录一下步骤,原理可以查看其他帖子:在自定义的包比如com.test内新建一个类,比如叫DbCountAutoConfiguration.java,类名上加@Configuration在该类内通过使用@Bean来加载该starter需要的加载的Bean。若允许用户在自己的工程内覆盖该类定义的@Bean,则根据情况在加载Bean的时候增加@ConditionalOnMissingBean或者@C...原创 2018-04-04 09:26:18 · 491 阅读 · 0 评论 -
Spring Boot中使用@WebFilter的Filter不起作用解决方案
在Spring Boot项目中,有一个项目的使用@WebFilter的Filter不起作用。记录一下解决方式:Filter的实现方式如下:@Order(1)@WebFilter(filterName = "commonDataFilter", urlPatterns = "/*")public class CommonDataFilter implements Filter { ....原创 2018-04-05 11:04:45 · 30450 阅读 · 11 评论 -
Spring Cloud源码解析之如何集成Zuul
Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。Zuul 可以适当的对多个 Amazon Auto Scaling Groups 进行路由请求。其架构如下图所示: Zuul提供了一个框架,可以对过滤器进行动态的加载,编译,运行。过滤器之间没有直接的相互通信。他们是通过一个RequestCont...原创 2018-04-05 13:38:49 · 748 阅读 · 0 评论 -
Netflix Ribbon原理与实践
Ribbon是什么?Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随即连接等)去连接这些机器。我们也很容易使用Ribbon实现自定义的...原创 2018-04-06 22:02:15 · 6091 阅读 · 0 评论 -
Spring Cloud中RestTemplate是如何通过注解与Ribbon结合的
我们在写Spring Cloud代码时,如何调用Spring Cloud中的其他服务呢?只需要定义一个RestTemplate,然后在其上加一个注解@LoadBalanced即可。如下:@Bean@LoadBalancedRestTemplate restTemplate() { return new RestTemplate();}我们就可以直接使用服务名称来调用该服务的接口。那使用了@...原创 2018-04-07 11:28:44 · 2197 阅读 · 0 评论 -
Spring Boot常用注解总结
Spring Boot是Spring框架对“约定优于配置(Convention Over Configuration)”理念的最佳实践产物。一个典型的Spring Boot应用本质上就是一个基于Spring框架的应用。Spring Boot使用注解的方式对Bean和配置进行收集,注册,分析和组装。简化了基于XML配置文件的开发。能够快速地构建出一个应用程序。以下注释基于Spring Boot 1....原创 2018-07-21 17:46:08 · 4723 阅读 · 0 评论 -
Spring Boot是如何启动Web Container和Spring MVC的
Spring Boot一般使用starter来整合第三方框架与扩展功能。其套路是:定义一个XXXXAutoConfiguration的类。其中XXXX一般可以写成所需集成的功能或框架。其上可定义@Conditional相关注解,指定何时可初始化该功能。 在该类上@Import一个ImportBeanDefinitionRegistrar接口的实现类来注入指定的Bean。 添加自定义的Bea...原创 2018-07-22 13:15:13 · 2183 阅读 · 1 评论