Spring Cloud
6点A君
记录我学习的知识的地方~
展开
-
Spring-聊聊Spring Cloud配置动态更新Nacos篇
有用过Nacos小伙伴应该清楚,在Spring Cloud项目中,可以动态更新配置类的值,例如下面场景。我们在使用 Spring Cloud Gateway时,向做一个开关,如果新项目上线凌晨上线,测试还在验收,需要做一套ip白名单,这样场景下,就可以利用配置中心,当验收通过后,再更新对应变量值,实现动态配置。本文将从配置加载、配置动态刷新两个角度进行分析。配置加载上一篇文章,研究过Spring 启动时 prepareEnvironment 方法过程,其中最后留下的疑惑为,加载完bootstrap后原创 2020-11-08 23:45:04 · 1439 阅读 · 0 评论 -
Spring-聊聊application.yml和bootstrap.yml
用过Spring 的小伙伴都知道,application.yml或者application.properties 是Spring 的引导配置文件,但是有了解过其中区别吗?本文将给从这个问题入手,深入源码中,研究application.yml和bootstrap.yml到底有什么区别。配置首先,我们在程序中,可以通过 spring.profiles.active 来制定生效的配置类,这样可以来区分配置。其次,可以通过更改 spring.config.name 来更改引导的配置文件名字,例如可以将 an原创 2020-11-02 23:23:43 · 1182 阅读 · 2 评论 -
Spring(二十二)Spring MVC 对Tomcat 的 Servlet,Filter和Listener 组装分析
博主从Spring Boot 去看Spring MVC 启动过程,而Spring Boot 默认集成了内置的tomcat容器,所以分析Spring MVC ,中间还夹着挺多Tomcat逻辑。Java web中有三大组件:ServletFilterListener记得开始学习Java Web时候,就是通过这几个入门的,定义Servlet用于处理Http请求,定义Filter来对请求进行拦截,而使用ServletContextListener 来监听容器创建和销毁动作。本文主要基于Tomcat原创 2020-08-12 13:53:09 · 351 阅读 · 0 评论 -
Spring(二十一)Spring 声明式事务研究
有没有觉得在Spring 中使用事务很简单,完全不用了解事务,只知道需要加事务地方,加上 @Transactional 注解就好了。是不是很简单?但是,正因为封装的这么好,开发人员集中精力在业务开发上,那么很有可能忽略很多数据库一些特性以及觉得对 @Transactional 很了解,就是事务嘛。以下几个问题可以思考下:数据库事务隔离级别有哪些?@Transactional 操作事务隔...原创 2020-08-11 19:40:45 · 258 阅读 · 0 评论 -
Spring(二十)Spring AOP createProxy 创建CGLIB代理 过程-下篇
上篇文章分析了CGLIB创建代理的逻辑结构,但是感觉CGLIB比JDK生成代理复杂很多,而且上篇文章没有深入,本文将深入了解 CGLIB创建过程,本文包含包含CGLIB创建代理的逻辑代码有点多,但是确实复杂!总不能Spring 替我们生成了类,而我们不知道它具体长啥样子吧。Object proxy = createProxy(bean.getClass(), beanName, specifi...原创 2020-08-10 12:02:36 · 604 阅读 · 0 评论 -
Spring(十九)Spring AOP createProxy 创建CGLIB代理 过程-上篇
上一篇详细分析了分析了Spring AOP中使用 JDK 动态代理过程,本文将详细关注使用CGLIB情况。Spring AOP 中,使用CGLIB作为代理生成工具时,入口仍然在 : @Override public AopProxy createAopProxy(AdvisedSupport config) throws AopConfigException { if (config.i...原创 2020-08-10 12:02:14 · 386 阅读 · 0 评论 -
Spring(十八)Spring AOP createProxy 创建JDK代理 过程
Spring(待定)Spring AOP createProxy 创建代理 过程原创 2020-08-07 21:39:16 · 472 阅读 · 0 评论 -
Spring(十七)Spring AOP 原理探究-aop解析入口分析
上一篇文章主要介绍了Spring AOP一些简单用法,当然如果要了解更多,可以选择再去看看Spring 文档。博主还是喜欢从源码中知其所以然嘿嘿。Spring-boot-starter-aop博主以 Spring-boot-starter-aop 为例,开始分析。...原创 2020-05-21 22:53:03 · 602 阅读 · 0 评论 -
Spring(十五)Spring AOP 初窥
Spring AOP 了解一下原创 2020-05-19 09:13:40 · 225 阅读 · 0 评论 -
Spring IOC(十四)Dubbo 与Spring 集成 - @Reference和@Service 原理
上一篇文章围绕 @EnableDubbo 进行了深入的分析,本篇文章将重点看@Service和@Reference 原理。原创 2020-05-17 23:04:05 · 679 阅读 · 0 评论 -
Spring IOC(十三)Dubbo 与Spring 集成 - EnableDubbo原理
EnableDubbo怎么样运行的呢?原创 2020-05-13 22:14:18 · 1309 阅读 · 0 评论 -
Spring IOC(十二)@Import和 @PropertySource 注解研究
@Import和 @PropertySource 了解一下?原创 2020-05-11 22:41:39 · 333 阅读 · 0 评论 -
Spring IOC(十一)Mybatis-Spring 驱动原理
ApplicationListenerDetector原创 2020-05-10 22:32:20 · 266 阅读 · 0 评论 -
Spring IOC(十)几种BeanPostProcessor 关系
其他 主要的 BeanPostProcessors 来了解下原创 2020-04-28 22:34:12 · 555 阅读 · 0 评论 -
Spring IOC (九)refresh 分析 后续 过程 分析
refersh后续过程也很重要原创 2020-04-24 23:43:42 · 265 阅读 · 0 评论 -
Spring IOC(八)CommonAnnotationBeanPostProcessor 原理分析
@Resource 和@PostConstruct 注解用过,有没有看看原理呢?原创 2020-04-24 23:36:11 · 1861 阅读 · 0 评论 -
Spring IOC(七)Spring 中循环依赖的解决
Spring 循环依赖怎么解决的呢?原创 2020-04-06 23:58:36 · 531 阅读 · 0 评论 -
Spring IOC(六)AutowiredAnnotationBeanPostProcessor 原理分析
ImportAwareBeanPostProcessor原创 2020-03-26 23:14:59 · 5744 阅读 · 1 评论 -
Spring IOC(五)BeanFactory.getBean 方法分析
Spring 容器帮程序管理Bean,而实际上最终是由BeanFactory 管理的,本文就具体分析getBean方法。重载方法Spring 提供以下方法获取bean实例,当然大同小异:getBean以 传入 classType为例,当调用 getBean:204, AbstractBeanFactory,进入 AbstractBeanFactory 的 getBean 方法: @Ov...原创 2020-03-24 23:32:40 · 1405 阅读 · 1 评论 -
Spring IOC(四)ConfigurationClassPostProcessor 用法分析
ConfigurationClassPostProcessor原创 2020-03-23 23:16:41 · 446 阅读 · 0 评论 -
Spring IOC(三): refresh 分析 invokeBeanFactoryPostProcessors 过程
Spring 中工厂处理器执行逻辑(BeanFactoryPostProcessor)原创 2020-03-23 23:09:46 · 259 阅读 · 0 评论 -
Spring IOC(二): refresh 分析 prepare过程
本文继续跟着上一篇文章走,开始分析 AbstractApplication 的 refresh 方法。原创 2020-03-18 21:57:40 · 346 阅读 · 0 评论 -
Spring IOC(一):容器启动初窥
Spring 源码阅读,应该从哪里入手?跟着楼主就对了!原创 2020-03-17 21:43:28 · 723 阅读 · 0 评论 -
Spring Cloud入门与实践(三)-Hystrix
接着跟着前一篇,通过负载均衡来减轻服务端压力,客户端利用RestTemplate来获取服务。 那么这里有个问题,如果所有服务器极限压力了,那么就算负载都没有用了,等了好久没返回怎么办? 此时就需要服务器的容错机制了。容错性服务的容错性,简单讲就是为失败而设计。比如以下情况: 由于网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题直接导致调用方的对外服务也延迟,若此时调用方请求...原创 2018-06-19 22:10:34 · 1794 阅读 · 0 评论 -
Spring Cloud入门与实践(一)-Eureka
微服务,很火的一个概念,无数的架构师和开发者在实际项目中实践该设计理念并为此付出了诸多努力,同时也涌现出针对不同应用场景出现的各种问题的各种解决方案和开源框架,服务治理例如Dubbo,Netflix的Eureka。分布式配置管理Spring Cloud的Config等。批量任务例如Spring Cloud的Task,LinkedIn的Azkaban服务跟踪入京东的Hydra,Sprin...原创 2018-06-09 21:33:44 · 2406 阅读 · 0 评论 -
Spring Security OAuth2 实现SSO
SSO即Single Sign-On,单点登录,即授权服务器形式,通过在一个网站上登录完后,给予过授权的就可以直接用这个帐号信息登录了,类似于qq微信登录其他APP。 本篇文章,将利用Spring Security实现简单的单点登录中需要的,认证服务器和客户端。SSO服务器首先实现一个SSO服务器,下面是基本的pom文件: <dependency>...翻译 2018-06-23 16:44:40 · 6344 阅读 · 4 评论 -
Spring Cloud入门与实践(四)-Feign
Feign是什么呢?声明式服务调用,记得在使用Ribbon负载均衡时候,需要用到一个RestTemplate来进行调用,而有了Feign,可以直接写类似于Controller的方式来进行一个声明式的服务调用了...原创 2018-06-20 21:45:39 · 1953 阅读 · 0 评论 -
Spring Cloud入门与实践(二)-Ribbon
前一篇文章介绍了Spring Cloud Eureka的简单实践,本篇文章介绍Ribbon的实践。What is RibbonSpring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,这里的客户端是站在服务器的角度来看的,它基于Netflix Ribbon实现。 通过Spring Cloud的封装,可以轻松的将面向服务的Rest模板请求自动转化成客户端负载均衡...原创 2018-06-11 23:17:32 · 1860 阅读 · 0 评论