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

河北移动端网站建设100个免费推广b站

河北移动端网站建设,100个免费推广b站,游戏公司,cad做兼职区哪个网站项目git地址:https://gitee.com/lpengs/cloud-demo.git 前面我们学习sentinel熔断和降级时,如果服务器重启,那么配置的规则都会消失。这就很不友好。这里我们尝试把规则持久化到nacos中。 我们先看看没有把sentinel集成到nacos中是什么样子…

项目git地址:https://gitee.com/lpengs/cloud-demo.git

前面我们学习sentinel熔断和降级时,如果服务器重启,那么配置的规则都会消失。这就很不友好。这里我们尝试把规则持久化到nacos中。

我们先看看没有把sentinel集成到nacos中是什么样子的。

我们先修改下service-order里面的yml配置如下:

server:port: 8000
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/order_tbl?useUnicode=true&characterEncoding=utf-8&useSSL=falseusername: xxxxpassword: yyyyprofiles:active: devinclude: feignapplication:name: service-ordercloud:nacos:discovery:namespace: ${spring.profiles.active:dev}server-addr: 127.0.0.1:8848config:import-check:enabled: falsenamespace: ${spring.profiles.active:dev}
logging:level:com.atguigu.order.feign: debug
---
spring:config:import:- nacos:common.properties?group=order- nacos:database.properties?group=orderactivate:on-profile: dev
---
spring:config:import:- nacos:common.properties?group=order- nacos:database.properties?group=orderactivate:on-profile: test
---
spring:config:import:- nacos:common.properties?group=order- nacos:database.properties?group=orderactivate:on-profile: prod
mybatis-plus:mapper-locations: classpath*:/mapper/**/*.xmlconfiguration:map-underscore-to-camel-case: true  # 驼峰映射(建议开启)

 我们启动微服务。(在此之前先启动nacos和sentinel)

http://localhost:8848/nacos   用户名和密码都是nacos

http://localhost:8080/   用户名和密码都是sentinel

页面输入 http://localhost:8000/readDb 回车

然后频繁刷新页面,可以看到每次都可以获取到数据:

然后我们在sentinel后台页面可以看到调用的这个接口信息(看不到就刷新下)

 

我们对这个接口进行下流控配置:

 点击流控:

弹出的页面,选择QPS 单击阈值改为1。代表最多1次/秒的访问频率限制。点击新增

这样就生效了。

这时可以在流控规则里面看到这个规则

接下来我们刷新页面频繁的话,超过1QPS,就会报错。如下

说明被限流了。

 但是当我们重启下微服务,再次频繁刷新时,就会发现没有报错,说明规则失效了。

这时候我们去后台sentinel看(先刷新下),流控规则已经消失了。

这是因为,流控规则是保存在内存中的,如果重启微服务,内存中的规则就消失了。这是个不可接受的痛点,哪能每次重启服务把规则重新配置一遍呢。所以把规则配置到nacos里面去。

我们首先,在services里面引入依赖,这样order微服务作为子项目也会自动引入这个依赖了:

<dependency>  <groupId>com.alibaba.csp</groupId>  <artifactId>sentinel-datasource-nacos</artifactId>  <version>1.8.8</version>  
</dependency>  

记得右上角刷新下使依赖引入生效。

然后我们修改下yml配置如下:

 

spring:cloud:openfeign:client:config:default:logger-level: fullconnect-timeout: 3000read-timeout: 5000service-product:logger-level: fullconnect-timeout: 3000read-timeout: 5000sentinel:transport:dashboard: localhost:8080eager: trueweb-context-unify: falsedatasource:flow:nacos:server-addr: 127.0.0.1:8848data-id: ${spring.application.name}-flow-rulesgroup-id: SENTINEL_GROUPrule-type: flowdata-type: jsonnamespace: ${spring.profiles.active:dev}
feign:sentinel:enabled: true

 

大家记得命名空间是区分服务和properties配置的范围,一定要一一对应,比如dev、prod、test,都要保持跟项目启动配置一致。

data-id是应用名字拼接上-flow-rules。

下面我们去nacos配置下这个data-id数据集:

如上创建配置,记得这是在dev下创建配置的,跟yml中的命名空间需要一致。

service-order-flow-rules   注意这里是应用的名字拼接的,根据自己的项目的实际名字来

SENTINEL_GROUP

order服务流控规则

[{"resource": "/readDb","limitApp": "default","grade": 1, "count": 1, "clusterMode": false }
]

 

右下角发布,即可。

然后我们重启服务,刷新页面: 

可以看到频繁刷新的话,被限流了。

下面重点看看,我们重启微服务,再次刷新操作,看看还生效吗

 

 如上图所示,重启服务后,规则还是生效的,这样就做到了持久化。

授人以鱼不如授人以渔,更多流控规则配置,可以问问豆包小姐姐,或者deepseek

真的超级好用的ai工具。推荐大家多利用。 

http://www.tj-hxxt.cn/news/57202.html

相关文章:

  • 网页游戏网站下载站长之家素材网站
  • 网站关键词如何优化软文平台有哪些
  • 江苏加强政府网站内容建设管理办法日本产品和韩国产品哪个好
  • 做presentation的网站网上培训
  • 湖南省人民政府电话号码seo综合查询工具
  • 德阳如何做百度的网站大庆网络推广
  • wordpress文章id排列seo 资料包怎么获得
  • html商品展示页面什么是seo站内优化
  • 网站即时在线客服深圳百度关键词
  • 中国建设银行南京分行网站首页开发制作app软件
  • 张家港网站开发制作杭州正规引流推广公司
  • 视频网站怎么做可以播放电视剧信息流优化师发展前景
  • 东莞网站建站推广网络营销品牌
  • 电商设计网站哪个好朝阳区seo搜索引擎优化怎么样
  • 泰安红河网站建设网页点击量统计
  • 福建漳州网站建设哪家便宜电脑培训学校网站
  • php网站开发主要做什么站长工具seo综合查询腾讯
  • 企业门户定制网站建设公司磁力搜索器下载
  • 网站开发域名网站推广怎样做
  • 工商局网站清算组备案怎么做域名批量查询
  • 广州的做淘宝女鞋货源下载数据包的网站网址是多少?百度网址导航主页
  • 可以做笔记的网站上海百度竞价托管
  • 资源网站排名优化seo百度免费推广有哪些方式
  • 新建的网站怎么做seo优化推广普通话宣传周
  • 上海哪家公司提供专业的网站建设成都网站建设技术支持
  • 做网站必须要公司才能做吗seo是什么简称
  • html在线编写网站seo排名影响因素主要有
  • 西安培训网站建设互联网营销行业前景
  • 重庆市城市建设档案馆网站丁的老头seo博客
  • 芜湖做网站的客户排名优化seo公司