自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringCloud Getway服务网关

Gateway网关网关的角色是作为一个 API 架构,用来保护、增强和控制对于 API 服务的访问。API 网关是一个处于应用程序或服务(提供 REST API 接口服务)之前的系统,用来管理授权、访问控制和流量限制等,这样 REST API 接口服务就被 API 网关保护起来,对所有的调用者透明。因此,隐藏在 API 网关后面的业务系统就可以专注于创建和管理服务,而不用去处理这些策略性的基础设施。Gateway特性:基于Spring Framework ,Project Reactor 和

2021-01-20 21:09:20 899

原创 Hystrix案例

Hystrix的重要概念①:降级服务服务器忙碌或者网络拥堵时,不让客户端等待并立刻返回一个友好提示。②:服务熔断类似保险丝 当达到最大服务访问后, 直接拒绝访问, 直接拉闸, 然后调用服务降级的方法并返回一个友好提示。服务降级-> 进而熔断 -> 恢复调用链路;③:服务限流秒杀高并发等操作, 严禁一窝蜂的拥挤,大家排队,一秒钟N个,有序进行。Hystrix局部服务降级案例...

2021-01-19 22:01:44 133 1

原创 如何自定义负载均衡

自定义负载均衡-lb1,先开通负载均衡,添加后端端口:80和4432,服务器ECS安全组:入方向允许80和4433,容器服务:增加 lb 应用,编排模式lb: image: registry.aliyuncs.com/acs/proxy:0.5 ports: - '80:80' - '443:443' # https 必须暴露这个端口 restart: always labels: # addon

2021-01-18 20:02:57 355

原创 ribbon负载均衡的策略有哪些?

IRule这是所有负载均衡策略的父接口,里边的核心方法就是choose方法,用来选择一个服务实例。AbstractLoadBalancerRuleAbstractLoadBalancerRule是一个抽象类,里边主要定义了一个ILoadBalancer,就是我们上文所说的负载均衡器,负载均衡器的功能我们在上文已经说的很详细了,这里就不再赘述,这里定义它的目的主要是辅助负责均衡策略选取合适的服务端实例。RandomRule看名字就知道,这种负载均衡策略就是随机选择一个服务实例,看源码我们知道,在Ra

2021-01-18 20:00:01 848

原创 使用ribbon进行负载均衡的步骤

1.你要有两个服务,一个是服务消费方(下图的xing-movie是消费方),一个是服务提供方(xing-user是服务提供者),并且服务提供方要有两个实例,也就是xing-user有两个实例,分别运行在8070和8071端口。2.所有服务注册到eureka server中。接下来我们在movie服务使用ribbon实现负载均衡调用中调用user服务,spring cloud使用ribbon很简单1.引入依赖,因为user服务的pom.xml中引入了eureka的依赖,eureka的依赖包含了ribb

2021-01-18 19:57:24 116

原创 eureka 和zookeeper、consul的区别

主要区别的话,看CAP选择,大部分注册中心,就是在这个定理去选择的,具体怎么选择,看下文CAP定理: 指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可同时获得。一致性(C): 在分布式系统中的所有数据备份,在同一时刻是否同样的值。(所有节点在同一时间的数据完全一致,越多节点,数据同步越耗时)可用性(A): 负载过大后,集群整体是否还能响应客户端的读写请求。(服务一直可用,而且是正常响应时间)

2021-01-18 19:53:13 179

原创 什么是CAP理论? cp ap原则的含义

前言我们学习分布式系统,就一定听说过CAP定理,尤其在学习分布式事务时,都是以这个定理作为开场。这个定理起源于柏克莱加州大学的计算机科学家埃里克·布鲁尔在2000年的分布式计算原则研讨会上提出的一个猜想。在2002年,麻省理工学院的赛斯·吉尔伯特和南希·林奇发表了布鲁尔猜想的证明,使之成为一个定理。定理讨论了在两个互相矛盾的请求到达彼此连接不通的两个不同的分布式节点的时候的处理方案。CAP针对对象我们看到Mysql数据库产品,可以进行分布式部署(集群方式,也支持单机),研发My

2021-01-18 19:33:38 6780 2

原创 简述eureka的自我保护模式? 如何配置其自我保护模式

一 Eureka的自我保护模式进入自我保护模式最直观的体现就是Eureka Server首页的警告,如下图:技术分享默认情况下,如果Eureka Server在一定时间内没有接收到某个微服务实例的心跳,Eureka Server将会注销该实例(默认90秒)。但是当网络分区故障发生时,微服务与Eureka Server之间无法正常通信,这就可能变得非常危险了----因为微服务本身是健康的,此时本不应该注销这个微服务。Eureka Server通过“自我保护模式”来解决这个问题----当Eureka

2021-01-18 19:13:40 658

原创 RestTemplate如何使用

一、概述spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值类型即可。相较于之前常用的HttpClient,RestTemplate是一种更优雅的调用RESTful服务的方式。在Spring应用程序中访问第三方REST服务与使用Spring RestTemplate类有关。RestTemplate类的设计原则与许多其他Spring *模板类(例如JdbcTempla

2021-01-18 19:07:20 216

原创 服务提供方集群如何搭建

服务方还是同样的创建方式,只需修改下resources下的application.yml文件①:application.ymlserver: port: 8001spring: application: name: cloud-payment-service #定义服务名称 datasource: #配置连接数据库的信息 username: root password: root url: jdbc:mysql://192.168.109.137:330

2021-01-18 18:53:16 96

原创 如何搭建eureka集群

新建3个eureka注册中心端口分别是7001,7002,7003。然后我们分别在三个配置文件中修改hostname域名修改完了,我们需要通过挂载defaultZone把三个服务的地址关联起来,配置文件变成这样,三个eureka的配置文件做相应修改即可。修改完之后三个eureka成功关联,达到下图的效果每个微服务注册三个eureka这个很好理解,在需要被注册的微服务配置文件中更改注册内容测试以此启动7001,7002,7003,在eureka的管理界面上可以看到,三者进行了管理,如果

2021-01-18 18:43:26 236

原创 Eureka微服务创建的流程

1、 搭建注册中心eureka<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> <version>2.0.0.RELEASE</version>

2021-01-18 18:35:09 152

原创 SpringBoot_总结

SpringBoot 总结SpringBoot 核心功能1、独立运行Spring项目SpringBoot 可以以jar包形式独立运行,运行一个SpringBoot项目只需要通过java -jar xx.jar来运行2、内嵌servlet容器SpringBoot可以选择内嵌Tomcat、jetty或者Undertow,这样我们无须以war包形式部署项目3、提供starter简化Maven配置spring提供了一系列的start pom来简化Maven的依赖加载,例如,当你使用了spring-boot-

2021-01-15 18:24:56 95

原创 SpringBoot_如何使用拦截器

所有的开发之中拦截器一定是一个必须要使用的功能,利用拦截器可以更加有效的实现数据的验证处理,而且最为幸运的是在SpringBoot之中所使用的拦截器与Spring中的拦截器完全一样。一、基础拦截器操作package com.gwolf.controller;import com.gwolf.util.controller.AbstractBaseController;import com.gwolf.vo.Member;import org.springframework.stereotyp

2021-01-14 20:10:24 203 1

原创 SpringBoot_如何处理异常

SpringBoot处理异常的5种方式一、自定义错误页面1.1 SpringBoot 默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制。一旦程序中出现了异常 SpringBoot 会像/error 的 url 发送请求。在 springBoot 中提供了一个叫 BasicExceptionController 来处理/error 请求,然后跳转到默认显示异常的页面来展示异常信息。1.2 如 果 我 们 需 要 将 所 有 的 异 常 同 一 跳 转 到 自 定 义

2021-01-14 20:03:41 148

原创 SpringBoot_如何开启自动配置

SpringBoot自动配置的实现原理SpringBoot的核心就是自动配置,自动配置又是基于条件判断来配置Bean。关于自动配置的源码在spring-boot-autoconfigure-2.0.3.RELEASE.jar回顾配置属性在通常需要我们在property中配置信息时,通常使用@ConfigurationProperties(pefix=“前缀”)注解的方式从配置文件中获取配置,如下:import org.springframework.web.bind.annotation.Requ

2021-01-14 19:57:58 268

原创 SpringBoot_day03之HashMap深入了解

1.hashmap的底层数据结构 1.8之前和1.8的区别?1、在JDK1.8之前HashMap由数组+链表 数据结构组成的。2、在JDK1.8之后HashMap由数组+链表+红黑树 数据结构组成的。2.hashmap存储元素的过程?put存值的方法,过程如下:这里写图片描述①.判断键值对数组table[i]是否为空或为null,否则执行resize()进行扩容;②.根据键值key计算hash值得到插入的数组索引i,如果table[i]==null,直接新建节点添加,转向⑥,如果ta

2021-01-12 19:32:17 938 2

原创 SpringBoot_创建Initializr项目

1、创建Spring Initializr 使用Initializr的话会自动为我们创建一个maven工程,还有一种就是Gradle,类似于maven的创建,只不过现在用的比较少,创建Initializr必须联网,不然的话的会创建失败。2、springboot的配置文件:yml properties两种全局的配置文件 application.yml![在这里插入图片描述](https://img-blog.csdnimg.cn/20210111203325200.png?x-oss-

2021-01-11 20:56:49 313

原创 SpringBoot_入门案例

1、springboot的优点· 快速创建独立运行的Spring项目以及与主流框架集成。· 使用嵌入式的Servlet容器,应用无需打成WAR包 。· starters自动依赖与版本控制。· 大量的自动配置,简化开发,也可修改默认值。· 无需配置XML,无代码生成,开箱即用。· 准生产环境的运行时应用监控 。· 与云计算的天然集成。2、第一个springboot项目①:使用idea工具创建一个maven工程,该工程为普通的java工程即可。②:添加依赖<!--spring-b

2021-01-11 08:10:05 204

空空如也

空空如也

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

TA关注的人

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