自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 Spring Cloud服务注册中心--Zookpeer的介绍和使用

2022-04-21 17:18:02 2627

原创 dubbo

一、基础知识1、分布式基础理论1.1)、什么是分布式系统?分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统。分布式服务框架(RPC)是关键。当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。此时,用于提高机器利用率的资源调度和治理中心(SOA)[ Service Oriented Architecture]是关键。1.2)、RPC什么叫RPCRPC【Remote Procedure Call

2022-04-14 20:57:19 251

原创 Redis的介绍和使用

1. NoSQL 数据库简介1.1. 技术发展就不讲了1.2. NoSQL数据库1.2.1. NoSQL数据库概述NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库。NoSQL 不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力。1. 不遵循SQL标准。2. 不支持ACID。3. 远超于SQL的性能。1.2.2. NoSQL适用场景1. 对数据高并发的读写2. 海量数据的读写3. 对数据

2022-04-07 15:49:31 667

原创 服务网关--Spring Cloud GateWay

1 概述Spring Cloud Gateway是在Spring生态系统之上构建的API网关服务,它旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能, 例如:熔断、限流、重试等。Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。Spring Clou

2022-03-17 17:06:48 694

原创 Docker的安装及使用

2022-03-17 14:21:54 2786

原创 lombok 注解介绍及使用

2022-03-14 15:21:38 764

原创 Spring Cloud Alibaba Seata--分布式事务

1 分布式事务问题用例用户购买商品的业务逻辑。整个业务逻辑由3个微服务提供支持:仓储服务:对给定的商品扣除仓储数量。订单服务:根据采购需求创建订单。帐户服务:从用户帐户中扣除余额。单体应用被拆分成微服务应用,原来的三个模块被拆分成三个独立的应用,分别使用三个独立的数据源业务操作需要调用三个服务来完成。此时每个服务内部的数据一致性由本地事务来保证,但是全局的数据一致性问题没法保证。结论一次业务操作需要跨多个数据源或需要跨多个系统进行远程调用,就会产生分布式事务问题。2 Seata简介S

2022-03-02 14:42:10 533

原创 Spring Cloud Alibaba Sentinel--分布式系统的流量防卫兵

1 sentinel1.官网https://github.com/alibaba/Sentinel中文:https://github.com/alibaba/Sentinel/wiki/介绍Hystrix:1.需要我们程序员自己手工搭建监控平台2.没有一套web界面可以给我们进行更加细粒度化的配置流控、速率控制、服务熔断、服务降级等Sentinel:1.单独一个组件,可以独立出来2.直接界面化的细粒度统一配置约定>配置>编码都可以写在代码里面,但是本次还是大规模的学习使用配

2022-02-28 17:39:55 303

原创 Spring Cloud Alibaba Nacos服务注册和配置中心

1 为什么叫Nacos英文全称Dynamic Naming and Configuration Service,Na为naming/nameServer即注册中心,co为configuration即注册中心,service是指该注册/配置中心都是以服务为核心。2 是什么一个更易于构建云原生应用的动态服务实现、配置管理和服务管理平台。Nacos就是注册中心 + 配置中心的组合 等价于 Nacos = Eureka + Config + Bus3 window安装Nacosa. 先从官网下载Naco

2022-02-24 14:51:02 805

原创 Spring Cloud Alibaba介绍

1 SpringCloud 组件2 产生原因之所以有Spring Cloud Alibaba,是因为Spring Cloud Netflix项目进入维护模式也就是,就不是不更新了,不会开发新组件了。2018.10.31,Spring Cloud Alibaba正式入驻了 Spring Cloud 官方孵化器,并在 Maven 中央库发布了第一个版本。3 介绍2018.10.31,Spring Cloud Alibaba正式入驻了 Spring Cloud 官方孵化器,并在 Maven 中央库发

2022-02-24 10:31:44 484

原创 链路追踪--Spring Cloud Sleuth

1 介绍Spring Cloud Sleuth要解决的问题?在微服务框架中,一个客户端发起的请求会经过不同的服务节点调用来协同产生最后的请求结果,每一个请求都会形成一条复杂的分布式调用链路,链路中的任何一环出现高延迟或者错误都会引起整个请求的失败。Spring Cloud Sleuth 是什么?Spring Cloud Sleuth为Spring Cloud提供了一套完整的服务跟踪的解决方案,在分布式系统提供追踪解决方案并兼容支持了zipkin(图形化展示链路调用流程)。简单来说,Sleuth相当于

2022-02-24 10:15:03 378

原创 消息驱动--Spring Cloud Stream

1 产生的原因现在一个很项目可能分为三部分:前端—>后端---->大数据而后端开发使用消息中间件,可能会使用RabbitMq而大数据开发,一般都是使用Kafka,那么一个项目中有多个消息中间件,并且这两个消息中间件的架构上也有所不同,像RabbitMq有exchange ,Kafka有Topic和Partitions分区,对程序员很不友好,所以产生Spring Cloud Stream而Spring Cloud Stream就类似jpa,屏蔽底层消息中间件的差异,程序员主要操作Spr

2022-02-23 17:49:43 738

原创 消息总线--Spring Cloud Bus

1 介绍Spring Cloud Bus 可配置Spring Cloud Config 使用可实现配置的动态刷新Spring Cloud Bus 能管理和传播分布式系统间的消息, 就像一个分布式执行器,可用于广播状态更改,事件推送等,也可以当做微服务间的通信通道注意,这里年张图片,就代表两种广播方式图1: 它是Bus直接通知给其中一个客户端,由这个客户端开始蔓延,传播给其他所有客户端图2: 它是通知给配置中心的服务端,有服务端广播给所有客户端2 为什么被称为总线

2022-02-22 16:23:41 710

原创 Spring Cloud中的分布式配置中心--Spring Cloud Config

1 概述产生的原因:每个微服务都需要一个配置文件,并且,如果有几个微服务都需要连接数据库那么就需要配4次数据库相关配置(假如用的同一个数据库),并且当数据库发生改动,那么需要同时修改4个微服务的配置文件才可以,所以产生分布式配置中心Spring Cloud Config 为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供一个中心化的外部配置。Spring Cloud Config项目是一个解决分布式系统的配置管理方案。它包含了Client和Server两个

2022-02-22 15:13:37 569

原创 服务降级(服务断路器)-Spring Cloud Hystrix的介绍和使用

1 概述1)服务雪崩是啥?2)Hystrix介绍3)Hystrix能干啥?1,服务降级(fallback)比如当某个服务繁忙,不能让客户端的请求一直等待,应该立刻返回给客户端一个备选方案2,服务熔断(break)当某个服务出现问题,卡死了,不能让用户一直等待,需要关闭所有对此服务的访问,然后调用服务降级详细讲解:类似于保险丝达到最大服务访问后,直接拒绝访问,拉闸限电,然后调用服务降级的方法并返回优好提示,相当于->服务降级->进而熔断->恢复调用链路比如并发达到10

2022-02-18 17:47:43 788

原创 服务调用--Spring Cloud OpenFeign的介绍和使用

1 概述Feign是一个声明式WebService客户端。使用Feign能让编写Web Service客户端更加简单, 它的使用方法是定义一个接口,然后在上面添加注解,同时也支持JAX-RS标准的注解。Feign也支持可拔插式的编码器和解码器。SpringCloud对Feign进行了封装,使其支持了Spring MVC标准注解和HttpMessageConverters。Feign可以与Eureka和Ribbon组合使用以支持负载均衡。是一个声明式的web客户端,只需要创建一个接口,添加注解即可完成微服

2022-02-18 11:16:36 294

原创 服务调用---Spring Cloud Ribbon

1,概述Spring Cloud Ribbon是基于Netflix Ribbon 实现的一套客户端 负载均衡工具简单的说,Ribbon是Netflix发布的开源项目,主要功能提供 客户端的软件负载均衡算法和服务调用,Ribbon 客户端软件提供一系列完善的配置项如连接超时、重试等,简单的说,就是在配置文件中列出Load Balance(简称LB)后面所有的机器,Ribbon会自动帮助你基于某种规则(如轮询、随机连接等)去连接这些机制,我们就很容易的用Ribbon实现负载均衡算法。Ribbon目前也进入

2022-02-17 16:17:24 244

原创 Eureka Zookpeer Consul Nacos注册中心的异同及CAP理论

组件名语言CAP服务健康检查对外暴露接口SpringCloud 集成可视化界面EurekaJavaAP可配支持HTTP已集成有ConsulGoCP支持HTTP/DNS已集成有ZookpeerJavaCP支持客户端已集成无CAPCAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者

2022-02-16 15:56:51 235

原创 Spring Cloud服务注册中心--Consul的介绍和使用

1.介绍Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言开发的。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。它有很多优点。包括:基于raft协议,比较简洁;支持健康检查,同时支持HTTP和DNS协议 支持跨数据中心的WAN集群 提供图形化界面 跨平台,支持windows linux mac2,windows安装Consu

2022-02-16 15:38:35 446

原创 Spring Cloud服务注册中心--Eureka的介绍和使用

1,为什么使用服务注册中心?当系统的微服务越来越多的时候,那么他们之间的调用关系就越来越复杂,这时候提出了服务注册中心,我理解的,服务注册中心,起初就是规范各个微服务之间的调用。2,什么是服务治理?Spring Cloud封装了Netflix公司开发的Eureka模块实现服务治理在传统的rpc调用框架中,管理每个服务与服务之间依赖关系比较复杂,所以服务服务治理,用于管理服务之间的依赖关系,可以实现服务调用、负载均衡、容错等,实现服务注册和发现。3,什么是服务注册与发现?Eureka 采用了CS(

2022-02-15 17:22:06 497

原创 Spring Cloud的介绍及项目搭建

SpringBoot与SpringCloud的关系与区别1,SpringBoot :是一个快速开发框架,通过用maven依赖的继承方式,帮我们快速整合第三方框架,完全采用注解化(使用注解方式启动SpringMVC),简化XML配置,内置HTTP服务器(Tomcat,Jetty),最终以Java应用程序进行执行。简化了spring的程序的搭建和开发。2,SpringCloud:是一套目前完整的微服务框架,它是是一系列框架的有序集合。通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终

2022-01-26 10:19:48 3597 1

原创 Shiro

简介ApacheShiro是Java 的一个安全(权限)框架。Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以完成:认证、授权、加密、会话管理、与Web 集成、缓存等。下载:http://shiro.apache.org/功能简介基本功能点如下图•Authentication:身份认证/登录,验证用户是不是拥有相应的身份;•Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否

2022-01-14 11:09:22 83

原创 CSRF 跨域

了解CSRF跨域

2022-01-12 15:14:38 586

原创 Spring Sercurity在Spring Boot 中的使用

Spring Security的使用

2022-01-11 16:14:01 656

原创 Nginx 的使用

nginx 的使用

2021-03-16 19:08:36 1022

原创 mysql中数据库字段类型详解

mysql中数据库字段类型详解1,blob字段mysql中blob是一个二进制大型对象,是一个可以储存大量数据的容器,它能容纳不同大小的数据。mysql中blob的四种类型除了存储数据的大小有区别,其它都一样。需注意:如果存储的文件过大,数据库性能也会下降很多。 mysql中的四种BLOB类型: 类型 大小(单位:字节) TinyBlob 最大255 Blob 最大65K MediumBlob

2021-03-12 15:01:02 1013

原创 Spring Boot的日志配置

springboot的logback日志输出的配置

2021-03-11 17:49:58 284

原创 Spring Boot的全局异常处理

springboot的全局异常处理

2021-03-10 17:29:02 83

原创 session,cookie,token的详解介绍以及单点登录的介绍

详解session,cookie,tokenhttp是一种无状态的协议,即这一次请求和上一次请求是没有任何关系,互不认识,没有管理的,所以需要使用一些手段将其关联起来session就是一个会话,服务器用来区分不同客户的"身份标识",客户端请求带上这个标识,服务器就可以通过自己存储的数据知道是哪个客户端,客户端存储这个身份标识的方式一般是用cookiecookie是浏览器中存储kv数据的一种具体功能,由服务器生成,发给浏览器,每个域的cookie的数量是有限的token由于session是存在服

2021-03-10 16:44:35 339

原创 JWT生成token

token是什么?答:token就是一段字符串,由三部分组成(头部(header),荷载(payload,签名(sign)))头部:是token的最基本信息,包含类型和用的算法。比如{ "type":"JWT", "alg":"HS256"}荷载/载荷:是核心,自定义的数据,一般是用户id,过期时间等{ "uid":"XXXXid", "exp":"122223"}签名:就是头部和荷载base64加密后用.连接起来的,然后形成xx.xx的前两段token,最后一段是用前两

2020-12-02 11:18:49 3940

原创 java中new和clone对象那个快

java中new和clone对象那个快在这里插入代码片

2020-11-26 17:29:41 232

原创 Spring Boot集成MongoDB

springboot集成mongodb1,先maven中引入jar包<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>默认情况下,该依赖并没有像使用MySQL或者Redis那样为我们提供连接池配置的功能。因此,我们需要自行重写

2020-11-26 16:27:47 534

原创 依赖注入和自动装配的区别与联系

依赖注入和自动装配的区别与联系自动装配其实是依赖注入的升级版,为了简化依赖注入的配置而生成的依赖注入的两种方式:1,构造器注入2,setter注入1.构造器注入对象属性<bean id="text" class="com.maven.Text" /><bean id="hello" class="com.maven.Hello"><constructor-arg ref="text" /></bean>2. 属性注入对象属性<bean

2020-11-25 15:45:41 3878

原创 Spring Bean的三种配置方式

spring bean的三种配置方式1,传统xml配置2,基于java注解配置3,基于类的java config一,传统的xml配置public interface BeanFactory { public void beanTest();}public class BeanFactoryImpl implements BeanFatory { @Override public void beanTest(){ system.out.println("传统的xml配置") }}

2020-11-24 15:58:06 367

原创 Spring Boot配置Swagger2 及Swagger2的注解及融合knife4j

Spring Boot配置swagger2pom文件<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><dependency><groupId>io.springfox</g

2020-11-24 11:17:08 664

原创 Swagger2导出api为html和pdf文档

swagger2导出api为html和pdf文档第一步:引入swageer2markup包在这里插入代码片<dependency> <groupId>io.github.swageer2markup</groupId> <artifactId>swageer2markup</artifactId> <version>1.3.1</version></dependency>第二步:通过代码生成a

2020-10-30 16:58:36 576

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除