组件
文章平均质量分 81
搭建dubbo,SpringCloud,从认识组件开始
BugRoot
CV大法(唯快不破),既搬既用。
展开
-
Guava之RateLimiter限流
RateLimter是什么,我们为什么需要用到它,以物流系统作为例子:比如系统有一个物流信息查询接口,提供给第三方调用,接口暴露在公网,会出现什么问题,大致讲下如下问题:1、大量正常用户高频访问导致服务器宕机2、恶意用户高频访问导致服务器宕机3、网络爬虫等等限流常见方案:1:Nginx限流2:Tomcat限流3:漏桶算法4:令牌算法等等这里不多介绍,只介绍下RateLimter的令牌算法。其它的后续文章会加上。需要引入第三方组件库<dependency> <原创 2021-05-12 18:34:10 · 3177 阅读 · 0 评论 -
Nacos(第一篇)_Springboot2.x+Nacos配置管理中心
前言在开发过程中,我们通常会配置一些参数来实现某些功能,如:开启某些服务,邮箱通知,短信通知等;一般在这个时候,我们都是通过硬编码来实现、配置文件或数据库实现。Nacos 配置管理Nacos 是阿里巴巴的开源的项目,全称 Naming Configuration Service ,专注于服务发现和配置管理领域。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态配置服务、服务发现及管理、动态DNS服务,服务元数据及流量管理。Nacos 生态图原创 2021-05-10 11:08:18 · 3282 阅读 · 0 评论 -
Sentinel(第三篇)_Springboot2.x+Sentinel监控信息基于MySQL持久化
前言根据官方提供的wiki文档,sentinel控制台的实时监控数据,默认提供的存储数据时间为 5 分钟以内的数据。如果我们的需求是需要持久化的,那就需要我们自己定制实现相关的接口。https://github.com/alibaba/Sentinel/wiki/%E5%AE%9E%E6%97%B6%E7%9B%91%E6%8E%A7本文只做一个持久化基于MySQL的方式,对于监控数据,可能用MySQL关系数据库存储不太合适,虽然MySQL也可以通过事件或者任务定期清理或者通过代码定时的清理。数据原创 2021-05-08 18:16:46 · 3990 阅读 · 0 评论 -
Sentinel(第二篇)_Springboot2.x+Sentinel源码版
前言:在第一篇,我为了偷懒使用的下载jar包版本启动的方式,由于现在需要集成nacos,则下载源码版。下载完成之后,解压进入解压后的文件夹如下然后我们打开当前项目,如下:打开可能没有展示完全,可能由于maven环境的加载,等等就好了。进入执行命令也可以用我们先试试我们下载的源码能不能启动,如果没有问题,我们再进行流控规则集中存储可以成功,接下来也要走一遍配置看看是否正常进入网站:localhost:8080并添加流控规则然后启动sentinel项目(第一篇搭建的项原创 2021-05-08 17:31:28 · 3460 阅读 · 0 评论 -
Sentinel(第一篇)_Springboot2.x+Sentinel
前言:Sentinel干嘛用的,我们先通过几个问题点,再通过这个几个问题点来看Sentinel是干嘛用的。限流:限流,字眼上的意思就是限制流量(请求数等),就是打个比方:一桶水最多装50毫升以每秒不超过10毫升,就不会溢出,假设瞬间你的水龙头滴水量超过了10毫升,那桶就会溢出,可能比较慢,但是如果一秒20毫升的水滴入,那很快就溢出了。可能一瞬间,也可能慢慢叠加。在系统上如果你的系统最大支持1000/qps,那如果一秒只有1000的qps进来,那服务器能稳定运行,如果一秒2000/qps的进来,服务器原创 2021-05-08 17:25:40 · 4080 阅读 · 1 评论