
Spring
文章平均质量分 82
爱分享的板栗老哥
一枚爱分享编程技术的老哥
展开
-
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(九)——sentinel组件的熔断降级和热点规则
SpringCloudAlibaba(九)——sentinel组件的熔断降级和热点规则熔断降级规则简介熔断:用来避免微服务架构中雪崩现象,达到某个阈值条件之后自动出发熔断原理:当监控到调用链路中某一个服务,出现异常(20个以上异常)自动出发熔断,在出发熔断之后对于该微服务调用不可用熔断降级规则的使用RT:根据请求响应时间熔断异常比例:根据请求调用过程中出现异常百分比进行熔断异常数:根据请求调用过程中异常数进行熔断平均响应时间领取资料当 1s 内持续进入 N 个请求,对应时刻的平均响应原创 2021-08-04 14:04:07 · 351 阅读 · 0 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(八)——sentinel组件的流控规则
SpringCloudAlibaba(八)——sentinel组件的流控规则流控规则简介其原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。QPS:当每秒的请求书超过一定阈值之后对当前请求进行限流并发线程数:当服务器中创建线程数超过一定阈值之后对当前请求进行限流流控规则的详解领取资料QPS:当每秒的请求书超过一定阈值之后对当前请求进行限流并发线程数:当服务器中创建线程数超过一定阈值之后对当前请求进行限流高原创 2021-08-04 13:54:49 · 295 阅读 · 0 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(七)——sentinel组件的安装和使用
SpringCloudAlibaba(七)——sentinel组件的安装和使用Sentinel简介随着微服务的普及,服务调用的稳定性变得越来越重要。Sentinel以“流量”为突破口,在流量控制、断路、负载保护等多个领域进行工作,保障服务可靠性。通俗来讲:用来在微服务系统中保护微服务对的作用 如何 服务雪崩 服务熔断 服务降级 就是用来替换hystrix特性丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)原创 2021-08-03 19:33:21 · 443 阅读 · 0 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(六)——nacos的集群搭建和负载均衡
SpringCloudAlibaba(六)——nacos的集群搭建和负载均衡nacos集群概念统一种软件服务的多个节点对一个系统提供服务称之为这个软件服务集群领取资料预备环境准备64 bit OS Linux/Unix/Mac,推荐使用Linux系统。64 bit JDK 1.8+;Maven 3.2.x+;3个或3个以上Nacos节点才能构成集群。nacos集群搭建集群规划nacos01 端口号8845nacos02 端口号8846nacos03 端口号8847mysq原创 2021-08-03 19:25:58 · 412 阅读 · 0 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(五)——nacos的mysql持久化
SpringCloudAlibaba(五)——nacos的mysql持久化nacos 持久化持久化:管理的配置信息持久化注意:默认nacos存在的配置信息持久化,默认的持久化方式为内嵌数据库derby缺点:无法展示数据官方建议:在生产情况下推荐将配置存入mysql数据库 注意:nacos到目前为止仅仅支持mysqlmysql安装1、输入vi /etc/yum.repos.d/mysql-community.repo添加官方的yum源创建并编辑mysql-community.repo文件vi原创 2021-08-03 19:21:15 · 380 阅读 · 0 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(四)——配置中心及自动刷新
SpringCloudAlibaba(四)——配置中心及自动刷新配置中心configclient开发nacos作为统一配置中心:1.它管理的配置文件方式是在自己所在的服务器上形成一个版本库,因此不需要再创建远程版本库2.nacos作为统一配置中心管理配置文件时,同样也存在版本控制1、创建一个config客户端子模块springcloudAlibaba-config-client-88882、导入相关依赖 <dependencies> <dependen原创 2021-08-03 13:41:45 · 519 阅读 · 4 评论 -
史上最全 SpringCloudAlibaba入门教程,从零开始带你深入♂学习(三)——Nacos客户端开发和openfeign服务间通信
SpringCloudAlibaba(三)——Nacos客户端开发和openfeign服务间通信nacos客户端开发1、新建一个模块springclouAlibaba-nacos-client-89892、导入相关依赖<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spri原创 2021-08-03 13:29:32 · 813 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十五)——bus组件:实现远端配置修改自动刷新
SpringCloud(十五)——bus组件:实现远端配置修改自动刷新实现自动配置刷新MQ服务主机:47.106.105.80:15672MQ端口号:15672(web管理界面) 5672(Java)虚拟主机:ems1、在springcloud-config-server-3344config服务端引入依赖<!--引入bus依赖--><dependency> <groupId>org.springframework.cloud</groupId原创 2021-07-30 19:27:54 · 265 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十四)——bus组件:消息总线RabbitMQ安装
SpringCloud(十四)——bus组件:消息总线RabbitMQ安装bus组件简介spring cloud bus使用轻量级消息代理将分布式系统的节点连接起来。然后,可以使用它来广播状态更改(例如配置更改)或其他管理指令。AMQP和Kafka broker(中间件)实现包含在项目中。或者,在类路径上找到的任何spring cloud stream绑定器都可以作为传输使用。bus称之为springcloud中消息总线,主要用来在微服务系统中实现远端配置更新时通过广播形式通知所有客户端刷新配置信息,原创 2021-07-30 17:52:09 · 291 阅读 · 1 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十三)——统一配置中心:config
SpringCloud(十三)——统一配置中心:configConfig组件简介spring cloud config 为微服务架构中的微服务提供集中化的外部支持,配置服务器为各个不同微服务应用的所有环节提供了一个中心化的外部配置。config(配置)又称为 统一配置中心顾名思义,就是将配置统一管理,配置统一管理的好处是在日后大规模集群部署服务应用时相同的服务配置一致,日后再修改配置只需要统一修改全部同步,不需要一个一个服务手动维护。spring cloud config 分为服务端和客户端两部分。原创 2021-07-30 17:47:43 · 260 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十二)——路由网关组件:Gateway
SpringCloud(十二)——路由网关组件:GatewayGateway组件简介Gateway提供了一个在springmvc之上构建API网关的库。springcloudgateway旨在提供一种简单而有效的方法来路由到api,并为api提供横切关注点,比如:安全性、监控/度量和弹性。1.特性基于springboot2.x 和 spring webFlux 和 Reactor 构建 响应式异步非阻塞IO模型动态路由请求过滤网关 gateway = 断言predicate + 过滤(后置原创 2021-07-30 17:38:06 · 536 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十一)——路由网关组件:zuul
SpringCloud(十一)——路由网关组件:zuul网关简介网关统一服务入口,可方便实现对平台众多服务接口进行管控,对访问服务的身份认证、防报文重放与防数据篡改、功能调用的业务鉴权、响应数据的脱敏、流量与并发控制,甚至基于API调用的计量或者计费等等。网关 = 路由转发 + 过滤器路由转发:接收一切外界请求,转发到后端的微服务上去;在服务网关中可以完成一系列的横切功能,例如权限校验、限流以及监控等,这些都可以通过过滤器完成网关的作用:网关统一所有微服务入口网关可用实现请求路径转发以及原创 2021-07-28 20:31:46 · 303 阅读 · 1 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(十)——Hystrix组件:服务降级和 Dashboard 流监控
SpringCloud(十)——Hystrix组件:服务降级和 Dashboard 流监控服务降级服务降级是指 当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理,或换种简单的方式处理,从而释放服务器资源以保证核心业务正常运作或高效运作。说白了,就是尽可能的把系统资源让给优先级高的服务。资源有限,而请求是无限的。如果在并发高峰期,不做服务降级处理,一方面肯定会影响整体服务的性能,严重的话可能会导致宕机某些重要的服务不可用。所以,一般在高峰期,为了保证核心功能服务的可用性,原创 2021-07-28 20:27:27 · 338 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(九)——Hystrix组件:服务熔断
SpringCloud(九)——Hystrix组件:服务熔断服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长,或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”。领取资料对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几十秒内饱和。比失败更糟糕的是,这些应用程序还可能导致服务之间的延迟增加,备份队列,线程和其原创 2021-07-28 14:34:34 · 274 阅读 · 2 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(八)——openFeign服务器间的调用
SpringCloud(八)——openFeign服务器间的调用OpenFeign 组件简介Feign是声明式Web Service客户端,它让微服务之间的调用变得更简单,类似controller调用service。SpringCloud集成了Ribbon和Eureka,可以使用Feigin提供负载均衡的http客户端实现服务间通信的两种方式1、RestTeampalte + Ribbon2、OpenFeignFeign能干什么?Feign旨在使编写Java Http客户端变得更容易前面在原创 2021-07-28 14:28:12 · 283 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(七)——Ribbon实现负载均衡
SpringCloud(七)——Ribbon实现负载均衡环境搭建1、新建两个数据表db02和db03db02CREATE DATABASE `db02`;USE `db02`;DROP TABLE IF EXISTS `dept`;CREATE TABLE `dept` ( `deptno` BIGINT(20) NOT NULL AUTO_INCREMENT, `dname` VARCHAR(60) DEFAULT NULL, `db_source` VARCHAR(60原创 2021-07-28 14:17:41 · 264 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(六)——Ribbon服务调用
SpringCloud(六)——Ribbon服务调用Ribbon简介Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。Ribbon的使用获取更多资料1、给消费者模块(springcloud-consumer-dept-80)添加依赖<!--Ribbon组件--><dependency原创 2021-07-27 13:25:31 · 229 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(五)——consul服务注册中心
SpringCloud(五)——consul服务注册中心consul简介consul是一个可以提供服务发现,健康检查,多数据中心,Key/Value存储等功能的分布式服务框架,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,使用起来也较为简单。Consul用Golang实现,因此具有天然可移植性(支持Linux、Windows和Mac OS X);安装包仅包含一个可执行文件,方便部署。consul安装和使用领取资料1.下载consul https://www.consul.原创 2021-07-26 21:32:55 · 266 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(四)——Eureka组件集群
SpringCloud(四)——Eureka组件集群环境搭建1、新建两个模块2、两个模块都加上eureka服务依赖和热部署依赖<dependencies> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-netflix-eureka-server --> <!--eureka服务--> <depend原创 2021-07-26 21:23:11 · 288 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(三)——Eureka组件服务注册中心
SpringCloud(三)——Eureka组件服务注册中心服务注册中心所谓的服务注册中心就是在整个的微服务架构中单独提取出一个服务,这个服务不完成系统的任何的业务功能,仅仅用来完成对这个微服务系统的服务注册和服务发现,以及对服务健康状态的管理功能。#1.服务注册中心- 可以对所有的微服务的信息进行存储,如微服务的名称、IP、端口等- 可以在进行服务的调用通过服务发现查询可用的微服务列表及网络地址进行服务调用- 可以对所有的微服务进行心跳检测,如发现某实例长时间无法访问,就会从微服务注册表移除该原创 2021-07-26 20:52:33 · 332 阅读 · 0 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(二)——RestTemplate客户端对象 服务调用
SpringCloud(二)—— RestTemplate客户端对象 服务调用RestTemplate简介spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值类型即可。相较于之前常用的HttpClient,RestTemplate是一种更优雅的调用RESTful服务的方式。RestTemplate 服务调用使用版本号:jdk11.0.10springboo原创 2021-07-26 19:54:09 · 528 阅读 · 2 评论 -
史上最全 SpringCloud入门教程,从零开始带你深入♂学习(一)——微服务与微服务架构
SpringCloud(一)——微服务与微服务架构微服务概述微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事情,从技术角度看就是一种小而独立的处理过程,类似进程的概念,能够自行单独启动或销毁,拥有自己独立的数据库。领取资料为什么是微服务?单体应用# 1.优点- 单一架构模式在项目初期很小的时候开发方便,测试方便,部署方便,运行良好。# 2.缺点- 应用随着时间的推进,加入的功能越来越多,最终会变得巨大,原创 2021-07-26 19:28:51 · 1384 阅读 · 0 评论 -
史上最全SpringMVC教程,从零开始带你深入♂学习(五)———Ajax
SpringMVC框架(五)—Ajax什么是AxjxAJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。jQuery.Axjx在web目录下新建一个statics文件下,里面再新建一个JS文件夹用来存放js文件领取资料一、下载jquery放到js文件夹,原创 2021-07-22 14:14:11 · 177 阅读 · 1 评论 -
史上最全SpringMVC教程,从零开始带你深入♂学习(四)——JSON
SpringMVC框架(四)—JSON什么是JSON?JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率JSON 键值对是用来保存 JavaScript 对象的一种方式,和 JavaScript 对象的写法也大同小异,键/对组合中的键名原创 2021-07-22 14:05:57 · 163 阅读 · 1 评论 -
史上最全SpringMVC教程,从零开始带你深入♂学习(三)——数据处理和乱码问题
SpringMVC框架(三)—数据处理和乱码问题处理提交数据一、提交的域名称和处理方法的参数名一致1、处理方法 :@RequestMapping("/hello")public String hello(String name){ System.out.println(name); return "hello";//加群1025684353一起吹水聊天}领取资料2、提交数据 : http://localhost:8080/hello?name=zhangsan3、后台输原创 2021-07-22 14:00:22 · 165 阅读 · 0 评论 -
史上最全SpringMVC教程,从零开始带你深入♂学习(二)——RestFul风格、重定向与转发
SpringMVC框架(二)—RestFul风格、重定向与转发RestFul风格一、传统写法1、 新建RestFulController类并编写领取资料package com.study.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapp原创 2021-07-22 13:50:57 · 173 阅读 · 0 评论 -
史上最全SpringMVC教程,从零开始带你深入♂学习(一)——SpringMVC快速入门、注解开发
SpringMVC框架(一)SpringMVC快速入门、注解开发SpringMVCSpring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。Spring MVC的特点:领取资料1. 轻量级,简单易学2. 高效 , 基于请求响应的MVC框架3. 与Spring兼容性好,无缝结合4. 约定优于配置5. 功能强大:RESTful、数据验证、格式化、本地化、主题等6. 简洁灵活SpringMVC快速入门一、新建一个Moudle,右键添加框架支原创 2021-07-22 13:38:14 · 2227 阅读 · 9 评论 -
史上最全Spring教程,从零开始带你深入♂学习(六)——spring声明式事务
Spring框架(六)—spring声明式事务事务事务四个属性ACID1. 原子性(atomicity)事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全部完成,要么完全不起作用2.一致性(consistency)一旦所有事务动作完成,事务就要被提交。数据和资源处于一种满足业务规则的一致性状态中3. 隔离性(isolation)可能多个事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏4. 持久性(durability)事务一旦原创 2021-07-21 14:20:42 · 208 阅读 · 0 评论 -
史上最全Spring教程,从零开始带你深入♂学习(五)——Spring与Mybatis的整合
Spring框架(五)—Spring与Mybatis的整合环境搭建导入相关依赖1. junit<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope>//加群1025684353一起吹水聊天&l原创 2021-07-21 14:13:36 · 180 阅读 · 0 评论 -
史上最全Spring教程,从零开始带你深入♂学习(四)——注解开发、AOP的使用
Spring框架(四) ——注解开发、AOP的使用导入配置文件约束:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org原创 2021-07-21 13:57:03 · 152 阅读 · 0 评论 -
史上最全Spring教程,从零开始带你深入♂学习(三)——日志、分页、注解开发
Srping框架(三)—日志、分页、注解开发日志一、mybatis默认日志:在mybatis核心配置文件中,配置日志:<settings> <setting name="logImpl" value="STDOUT_LOGGING"/></settings>领取资料执行代码:二、Log4j1、先导入log4j的包<!-- https://mvnrepository.com/artifact/log4j/log4j -->原创 2021-07-21 13:48:25 · 123 阅读 · 0 评论 -
史上最全Spring教程,从零开始带你深入♂学习(二)——Spring依赖注入DI、Bean作用域、Bean的自动装配
Spring框架(二)——Spring依赖注入DI、Bean作用域、Bean的自动装配依赖注入(Dependency Injection,DI)依赖 : 指Bean对象的创建依赖于容器,Bean对象的依赖资源注入 : 指Bean对象所依赖的资源,由容器来设置和装配构造器注入构造器注入:https://blog.youkuaiyun.com/qq_36972826/article/details/118936530set注入 (重点)要求被注入的属性 , 必须有set方法一、创建实体类领取资料pa原创 2021-07-21 13:39:13 · 251 阅读 · 0 评论 -
史上最全Spring教程,从零开始带你深入♂学习(一)——Spring入门、IOC创建对象方式、Spring配置
Spring框架(一)Spring入门、IOC创建对象方式、Spring配置spring快速入门一、导入spring依赖maven仓库地址:https://mvnrepository.com/<!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dependency> <groupId>org.springframework</groupId原创 2021-07-20 15:30:06 · 351 阅读 · 0 评论