Spring Collection
文章平均质量分 72
spring全家桶的来龙去脉
777_yL
在路上
展开
-
Spring cloud 网关 gateWay
GateWay简介基于spring5.0+springboot2.0+webFlux(基于高性能的Reactor模式响应式通信框架,异步非阻塞模型)为微服务架构提供一种简单有效的统一的API路由管理方式。Spring Cloud GateWay不仅提供**统⼀的路由⽅式(反向代理)**并且基于 Filter(定义过滤器对请求过滤,完成⼀些功能) 链的⽅式提供了⽹关基本的功能,例如:鉴权、流量控制、熔断、路径重写、⽇志监控等。架构位置核心概念基于Reactor,天然支持异步非阻塞。过程:一原创 2021-08-02 20:30:20 · 365 阅读 · 0 评论 -
Spring cloud 服务调用 feign
Feign简介(Feign = RestTemplate+Ribbon+Hystrix )Feign是Netflix开发的⼀个轻量级RESTful的HTTP服务客户端(⽤它来发起请求,远程调⽤的)类似dubbo,服务消费者拿到提供者的接口,像调用本地方法一样调用接口中的方法,实际发出的是远程的请求。本质:封装了http调用流程,更符合面向接口化的编程习惯/** * 1.name属性用于指定要调用微服务的名称,对应在注册中心的名称。 * 2.openFeign支持springmvc注解,接口原创 2021-08-02 20:27:46 · 241 阅读 · 1 评论 -
Springcloud 服务熔断 hystrix
Hystrix雪崩效应微服务架构中,少不了各个微服务之间的调用。服务调用之间会有依赖关系。微服务A调用微服务B,微服务B调用微服务C之后才能完成整个返回结果,完成整个请求链路。扇入:该服务被其他服务调用的次数。(该模块复用性好)扇出:该服务调用其他的服务的个数。(该模块业务复杂)所谓雪崩效应如果扇出的链路上某个微服务的调用时间过长或者不可用,对调用方微服务来说就会占用越来越多的系统资源,进而引起系统崩溃。解决方案服务熔断当扇出的链路上某个服务不可用或者响应时间过长,熔断该节点的服务调用,进行原创 2021-08-02 20:25:47 · 615 阅读 · 0 评论 -
Spring Cloud 服务调用 Ribbon
Ribbon负载均衡,旨在将请求分发。客户端负载均衡负载均衡算法在客户端执行eg:当a服务调用b服务时,在调用前已经从注册中心获取到了b服务的实例信息(服务地址列表)。使用ribbon采取指定的负载均衡算法选择一个进行请求。服务端负载均衡负载均衡算法在服务端执行eg: Nginx、 F5这些,请求到达服务器之后由这些负载均衡器根据⼀定的算法将请求路由到⽬标服务器处理。负载均衡策略Ribbon内置了多种负载均衡策略,内部负责复杂均衡的顶级接⼝为 com.netflix.loadbalanc原创 2021-08-02 20:23:40 · 107 阅读 · 0 评论 -
Spring Cloud 注册中心 Eureka
Eureka分为 Eureka Server、 Eureka Client。1.服务提供者作为客户端,在启动时,会将自己的信息(元数据:ip、port、服务名等等)传送给服务端。服务端会将此信息保存到map中。服务提供者会每隔30s向服务端发送心跳检测,如果90s内服务端没有收到客户端的心跳,就会将该实例剔除。2.服务消费者会从注册中心拉取对应服务的信息,并存入本地做缓存。如果对应服务的信息发生改变,注册中心会重新通知消费者重新拉取。3.服务端一般是集群化,来保证高可用。每当服务端收到注册信息后,会原创 2021-08-02 20:22:08 · 202 阅读 · 3 评论 -
架构演进以及rpq与http的区别
架构演进单体项目中所有的功能模块都放在一个工程中编码、编译、打包并且部署在一个应用服务器。优点:简单使用、便于维护、成本低缺点:代码复杂不宜维护、耦合度(核心业务和边缘业务混杂在一起,一崩全玩完)、新增业务困难垂直应用架构根据业务特性进行模块化拆分,减少系统之间的耦合度。(如一个招聘网站可分为 单点登录、主站、简历管理、职位管理等等)优点: 业务之间互不影响(分流)、分模块开发提高开发效率。缺点:服务之间调用协议、方式不稳定、不统一。没有规范化;集群化,负载均衡实现较复杂。服务监控不到位。原创 2021-08-02 20:20:49 · 276 阅读 · 0 评论 -
SpringCloud Alibaba Nacos 注册中心和配置中心(一、基础入门)
这里写目录标题Nacos简介为什么叫NacosNacos是什么Nacos能干嘛安装并运行NacosNacos作为服务注册中心1.导入依赖父POM子POM2.配置文件启动类业务类Nacos负载均衡各大注册中心对比Nacos作为配置中心创建nacos-config-client模块在Nacos中添加配置Nacos的动态刷新配置Nacos简介为什么叫NacosNaming和Configuration的前两个字母,最后的s为service。Nacos是什么Nacos 致力于帮助您发现、配置和管理微服务。N原创 2020-10-17 20:13:10 · 397 阅读 · 1 评论 -
SpringCloud Alibaba Nacos 注册中心和配置中心(二、分类配置)
nacos配置中心-分类配置引入NameSpace+Group+DataID三级目录引入实际开发中,通常一个系统会有dev开发环境、test测试环境、prod生产环境。如何保证指定环境启动时服务能正确读取到Nacos上相应环境的配置文件就是我们需要考虑的问题。一个大型分布式微服务系统会有很多微服务子项目,每个微服务项目又都会有相应的开发环境、测试环境、预发环境、正式环境… 怎么对这些微服务配置进行管理呢?NameSpace+Group+DataID三级目录...原创 2020-10-18 11:09:28 · 199 阅读 · 0 评论 -
Spring Cloud-Ribbon (服务调用、负载均衡)
摘要Spring Cloud Netflix Ribbon 是Spring Cloud Netflix 子项目的核心组件之一,主要给服务间调用及API网关转发提供负载均衡的功能,本文将对其用法进行详细介绍。Ribbon简介在微服务架构中,很多服务都会部署多个,其他服务去调用该服务的时候,如何保证负载均衡是个不得不去考虑的问题。负载均衡可以增加系统的可用性和扩展性,当我们使用RestTemplate来调用其他服务时,Ribbon可以很方便的实现负载均衡功能。LB负载均衡LoadBalance ,请用原创 2020-10-24 21:11:07 · 86 阅读 · 0 评论 -
SpringMVC详解 (一)概述及原理
SpringMVC1.MVC设计模式SpringMVC的简单流程SpringMVC的工作原理1.MVC设计模式Model1时代:很多学Java后端比较晚的朋友可能并没有接触过Model1模式下的JavaWeb应用开发。在Model1模式下,整个Web应用几乎全部用JSP页面组成,只用少量的JavaBean来处理数据库连接、访问等操作。这个模式下JSP即是控制层又是表现层。显而易见,这种模式存在很多问题。比如①将控制逻辑和表现逻辑混杂在一起,导致代码重用率极低;②前端和后端相互依赖,难以进回测试并且开发原创 2020-07-16 10:07:26 · 112 阅读 · 0 评论 -
拦截器(inteceptor)与过滤器(filter)的新认识
拦截器(inteceptor)与过滤器(filter)区别:拦截器是基于java的反射机制的,而过滤器是基于函数回调。拦截器不依赖与servlet容器,过滤器依赖与servlet容器。、拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次。拦截器可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在拦截器里注原创 2021-06-23 17:11:17 · 232 阅读 · 1 评论 -
Flyway入门及springboot整合flyway
Flyway团队开发遇到的问题为什么要使用FlywayFlyway的概念flyway支持的数据库Flyway的工作原理springboot整合flyway团队开发遇到的问题现在开发一般都是团队开发,这样就会出现项目同步的问题,代码同步可以通过SVN工具管理起来,那数据库同步怎么办呢?理想的情况下,在开发新项目的时候会首先把业务理清楚,把数据库表设计好,然后将数据库交给专门的人员维护,也就不存在数据库同步的问题了。但实际情况呢?需求从项目开始到项目结束一直在变,很多公司就没有专门的数据库维护人员,数据库大原创 2020-11-03 15:24:49 · 1953 阅读 · 0 评论 -
SpringBoot (一) @SpringBootApplication注解背后的三体结构探秘
SpringBootAppliaction@SpringBootApplication注解(基于SpringBoot 2.3.1)三体结构二级目录三级目录@SpringBootApplication注解(基于SpringBoot 2.3.1)// 标注一个主程序类,说明这是一个SpringBoot 应用@SpringBootApplication public class Springboot07DataMybatisApplication { public static void mai原创 2020-07-23 10:08:23 · 140 阅读 · 0 评论 -
Spring详解(三)AOP的使用
Spring AOP1.AOP概述1.1什么是AOP1.2 AOP的作用及优势1.3 AOP的实现方式2.AOP的具体应用2.1 AOP的引入2.1.2 事务问题2.2.2 解决方法2.3 新的问题:3.动态代理的引入3.1 动态代理的特点3.2 动态代理常用的有两种方式3.2.1 基于接口的动态代理3.2.2 基于子类的动态代理3.3 用动态代理解决问题4.Spring 中AOP4.1 Spring中AOP的细节4.1.1 说明4.1.2 AOP中的术语4.1.3 学习spring中的AOP要明确的事5.原创 2020-06-29 11:44:05 · 174 阅读 · 0 评论 -
Spring详解(二)Ioc的使用
Ioc的概念和作用1.什么是程序的耦合2. 解决程序耦合的思路3.工厂模式解耦4.Ioc的概念和作用5.Ioc的实现方式1.什么是程序的耦合前面我们了解到通过 Spring提供的 IoC容器,可以将对象间的依赖关系交由 Spring进行控制,避免硬编码所造成的过度程序耦合。那么什么是程序的耦合呢?耦合性(Coupling),也叫耦合度,是对模块间关联程度的度量。耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数原创 2020-06-26 22:04:03 · 256 阅读 · 0 评论 -
Spring详解(一)Spring概述
Spring概述1.Spring是什么2.Spring的发展3.Spring的优势1.方便解耦,简化开发2. AOP编程的支持3.声明式事务的支持4. 方便程序的测试5.方便集成各种优秀框架6.降低 JavaEE API的使用难度7.Java源码是经典学习范例4. spring 的体系结构1.Spring是什么Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control: 反转控制)和 AOP(Aspect Oriented P原创 2020-06-25 11:38:26 · 192 阅读 · 0 评论 -
Spring Aop实现后台访问日志
1.数据库与表结构1.1.日志表信息描述sysLog1.2 实体类 private String id; //自增长id private Date visitTime; //访问时间 private String visitTimeStr; //访问时间字符串格式 private String username; //操作者用户名 private String ip; //访问ip private String url; //访原创 2020-06-24 18:28:14 · 221 阅读 · 0 评论 -
SpringSecurity服务器端方法级权限控制@RolesAllowed注解不起作用的解决
JSR-250的使用1.在maven导入依赖<dependency> <groupId>javax.annotation</groupId> <artifactId>jsr250-api</artifactId> <version>1.0</version></dependency>2.开启注解在服务器端我们可以通过Spring security提原创 2020-06-24 09:29:52 · 3820 阅读 · 3 评论