当前位置: 首页 > news >正文

Sentinel介绍及搭建

分布式流量防护

服务雪崩

服务提供者不可用导致服务调用者也跟着不可用,以此类推引起整个链路中的所有微服务都不可用

分布式流量防护

在分布式系统中,服务之间的相互调用会生成分布式流量。如何通过组件进行流量防护,并有效控制流量,是分布式系统的技术挑战之一

服务保护技术

在SpringCloud当中支持多种服务保护技术Hystrix/Sentinel/Resilience4J

Sentinel

Sentinel

Sentinel是阿里开源的项目,提供了流量控制、熔断降级、系统负载保护等来保障服务之间的稳定性

主要特性

丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。

完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。

广泛的开源生态:Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。

完善的 SPI 扩展点:Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。

linux环境安装

网址

https://github.com/alibaba/Sentinel/releases

软件

sentinel-dashboard-1.8.3.jar

Linux启动(jar包所在目录,记得修改ip)

java -Dserver.port=8858 \-Dcsp.sentinel.dashboard.server=192.168.66.101:8858 \-Dproject.name=sentinel-dashboard \-jar ./sentinel-dashboard-1.8.3.jar

访问(最好谷歌)

192.168.66.101:8858

账号密码【sentinel/sentinel

使用docker安装

拉取镜像

docker pull docker.io/bladex/sentinel-dashboard

创建容器自启动,记得修改端口号

docker run --name sentinel --restart=always -d  -p 8858:8858 docker.io/bladex/sentinel-dashboard

访问

192.168.66.101:8858

账号密码【sentinel/sentinel

在项目中集成

创建maven项目子模块cloud-providerSentinel9003

pom.xml

<dependencies><!--     sentinel依赖--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency><!--nacos-discovery--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--SpringMVC--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--Actuator--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><!--Lombook--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency>
</dependencies>

Yaml配置文件

server:port: 9003
spring:application:name: cloud-providerSentinel9003cloud:nacos:discovery:# Nacos地址server-addr: 192.168.66.101:8848sentinel:transport:# Sentinel 控制台地址dashboard: 192.168.66.101:8858# sentinel api端⼝,默认8719port: 8719

启动类

@SpringBootApplication
public class providerSentinel9003 {public static void main(String[] args) {SpringApplication.run(providerSentinel9003.class,args);}
}


测试类

@RequestMapping("/providerSentinel9003")
@RestController
public class ProviderSentinel9003Controller {@GetMapping("testA")public String testA(){return "------------testA";}
}

测试

http://localhost:9003/providerSentinel9003/testA

相关文章:

Sentinel介绍及搭建

分布式流量防护 服务雪崩 服务提供者不可用导致服务调用者也跟着不可用&#xff0c;以此类推引起整个链路中的所有微服务都不可用 分布式流量防护 在分布式系统中&#xff0c;服务之间的相互调用会生成分布式流量。如何通过组件进行流量防护&#xff0c;并有效控制流量&…...

最受信任的低代码平台排行榜

近年来&#xff0c;随着数字化转型的兴起&#xff0c;低代码平台获得了大量关注。它允许用户在几乎没有编码知识的情况下创建应用程序&#xff0c;从而使企业能够简化其流程并提高效率。随着低代码平台的日益流行&#xff0c;要确定哪些平台最可靠、最值得信赖并非易事。在本文…...

Django框架之创建项目、应用并配置数据库

django3.0框架创建项目、应用并配置数据库 创建项目 进入命令行 新建一个全英文的目录 进入目录 输入命令 django-admin startproject project 项目目录层级 查看当前目录层级 tree /f 目录文件说明 创建数据库 做一个学生管理系统做演示&#xff0c;使用navicat创建数据…...

软件测试之基础概念学习篇(需求 + 测试用例 + 开发模型 + 测试模型 + BUG)

文章目录 1. 什么是软件测试2. 软件测试和软件开发的区别3. 软件测试和软件调试的区别4. 什么是需求1&#xff09;以需求为依据设计测试用例 5. 测试用例是什么6. 什么是 BUG&#xff08;软件错误&#xff09;7. 五个开发模型1&#xff09;瀑布模型2&#xff09;螺旋模型3&…...

Windows下版本控制器(SVN) - 1、开发中的实际问题+2、版本控制简介

文章目录 基础知识-Windows下版本控制器(SVN)1、开发中的实际问题2、版本控制简介2.1 版本控制[Revision control]2.2 Subversion2.3 Subversion 的优良特性2.4 SVN 的工作原理&#xff1a;2.5 SVN 基本操作 本人其他相关文章链接 基础知识-Windows下版本控制器(SVN) 1、开发中…...

Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 笔记

Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 笔记 摘要 Talking head synthesis is an emerging technology with wide applications in film dubbing, virtual avatars and online education. Recent NeRF-based methods generate more n…...

SpringBoot 项目整合 Redis 教程详解

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

3ASC25H214 DATX130以力控制为基础的装配应用方面已经形成了一个解决方案

​ 3ASC25H214 DATX130以力控制为基础的装配应用方面已经形成了一个解决方案 ABB的机器人解决方案最终选择了IRB6400机器人 ABB的解决方案 ABB一直都在不断地研究和开发机器人应用的新技术&#xff0c;有一部分研究活动是与大学进行合作的&#xff0c;其中一项是ABB的科学家和…...

Java的位运算

目录 1 Java中支持的位运算 2 位运算规则 3 逻辑运算 3.1 与运算&#xff08;&&#xff09; 3.2 或运算&#xff08;|&#xff09; 3.3 异或运算&#xff08;^&#xff09; 3.3 取反运算&#xff08;~&#xff09; 4 位移操作 4.1 左移&#xff08;<<&#…...

FastDFS分布式文件存储

FastDFS文件上传 简介&#xff1a; 主要解决&#xff1a;大容量的文件存储和高并发访问的问题 论坛&#xff1a;https://bbs.chinaunix.net 下载网站&#xff1a;https://sourceforge.net/projects/fastdfs/files/ 安装参考&#xff1a;https://www.cnblogs.com/cxygg/p/1…...

Android的AAC架构

AAC Android Architecture Components的简称&#xff0c;是一套用来搭建具有生命周期感知架构的系列组件&#xff0c;在2017年 GoogleI/O大会上发布。 dependencies {def lifecycle_version "2.2.0"implementation "androidx.lifecycle:lifecycle-livedata-ktx…...

高功率激光切割中不良现象的排除技巧

高功率切割市场现状 随着激光行业的发展和下游产业需求的变化&#xff0c;高功率的激光切割设备已逐渐成为市场关注的热点。高功率激光切割凭着速度和厚度上无可比拟的优势&#xff0c;目前已获得了市场的广泛认可。 但由于高功率激光切割技术尚处于普及的初级阶段&#xff0c;…...

MySQL-----复合查询

文章目录 前言一、基本查询回顾二、 多表查询解决多表查询的思路 三、自连接四、子查询1. 单行子查询2. 多行子查询3. 多列子查询4. 在from子句中使用子查询5. 合并查询5.1 union5.2 unoin all 总结 前言 前面的学习中,对于mysql表的查询都是对一张表进行查询,在实际开发中这远…...

10.Yarn概述

如果说HDFS是存储&#xff0c;则Yarn就是cpu和内存&#xff0c;mapreduce就是程序。 1.基础架构 复习&#xff1a; 1.Container就是一个容器&#xff0c;其中封装了需要使用的内存与cpu 2.每当提交一个job,就会产生一个appMaster(总指挥),app Master负责其他container里面的…...

MFC实现背景透明,控件不透明的对话框,且点击图片有事件响应

最终成果&#xff1a;背景半透明、但是控件不透明的对话框。 对话框上用图片代表功能&#xff0c;当点击图片时&#xff0c;响应点击事件&#xff0c;弹出相对应的对话框。 对话框固定大小&#xff0c;不可放大缩小&#xff0c;以免影响图片的显示数量。 步骤一&#xff1a;背景…...

案例01-tlias智能学习辅助系统01-增删改查+参数传递

目录 1、需求说明&#xff1a;实现对部门表和员工表的增删改查 2、环境搭建 3、部门管理 3.1 查询部门 3.2 前后端联调 3.3 删除部门 3.4 新增部门 3.5 根据ID查询数据 3.5 修改部门 总结&#xff08;Controller层参数接收&#xff09;&#xff1a; 4、员工管理 4.…...

Spring之Bean的配置与实例

Spring之Bean的配置与实例 一、Bean的基础配置1. Bean基础配置【重点】配置说明代码演示运行结果 2. Bean别名配置配置说明代码演示打印结果 3. Bean作用范围配置【重点】配置说明代码演示打印结果 二、Bean的实例化1. Bean是如何创建的2. 实例化Bean的三种方式2.1 构造方法方式…...

“不保留活动”打开,导致app返回前台崩溃问题解决

问题描述 不保留活动开关打开&#xff0c;把app切入后台&#xff0c;会导致当前展示的Activity被回收&#xff0c;切到前台后重建。 我们有个业务场景是&#xff0c;Activity里面有个ViewPager2&#xff0c;VP里面放Fragment&#xff0c;Fragment的展示需要在Activity中做一些…...

解读vue3源码(3)——watch

Vue3的watch底层源码主要是通过使用Proxy对象来实现的。在Vue3中&#xff0c;每个组件实例都会有一个watcher实例&#xff0c;用于监听组件数据的变化。当组件数据发生变化时&#xff0c;watcher实例会触发回调函数&#xff0c;从而更新组件的视图。 Vue3的watch底层源码主要涉…...

优秀简历的HR视角:怎样打造一份称心如意的简历?

简历的排版应该简洁工整&#xff0c;注重细节。需要注意对齐和标点符号的使用&#xff0c;因为在排版上的细节需要下很大功夫。除此之外&#xff0c;下面重点讲述几点简历内容需要注意的地方。 要点1&#xff1a;不相关的不要写。 尤其是与应聘岗位毫不相关的实习经历&#x…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

2023赣州旅游投资集团

单选题 1.“不登高山&#xff0c;不知天之高也&#xff1b;不临深溪&#xff0c;不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

Golang——9、反射和文件操作

反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一&#xff1a;使用Read()读取文件2.3、方式二&#xff1a;bufio读取文件2.4、方式三&#xff1a;os.ReadFile读取2.5、写…...

rknn toolkit2搭建和推理

安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 &#xff0c;不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源&#xff08;最常用&#xff09; conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...

向量几何的二元性:叉乘模长与内积投影的深层联系

在数学与物理的空间世界中&#xff0c;向量运算构成了理解几何结构的基石。叉乘&#xff08;外积&#xff09;与点积&#xff08;内积&#xff09;作为向量代数的两大支柱&#xff0c;表面上呈现出截然不同的几何意义与代数形式&#xff0c;却在深层次上揭示了向量间相互作用的…...