以前的认知里,Prometheus+Grafana当属监控领域的无敌手,其他的都无法比拟它的存在,后来由于成本过高,不得不慎重考虑下其他方案。
Prometheus 是一种开源的监控和警报工具包,最初由 SoundCloud 开发并开源。它具有以下特点:
多维度数据模型、Pull 模式采集、警报和告警管理、生态系统和可扩展性:
OLAP数据库
数据持久性和长期存储:
OLAP 数据库通常具有可靠的数据持久性和长期存储能力,能够存储大量历史数据,并支持快速的时间范围查询和数据回溯分析。
实时数据加载和查询:
虽然 OLAP 数据库通常不支持实时数据加载,但是一些现代 OLAP 数据库具有较低的延迟和高吞吐量,可以支持实时查询和分析需求。
一、类注释
想要在生成类的时候,自动带上author和时间,效果如下:
/**
* @author zhihuaiwen
* @since 2024/5/12 00:22
*/
public class EFE {
}
第一步:电脑端提取
先找到小程序保存的地址,一般先找到微信的文件管理下
然后到该目录的C:\Users\w1570\Documents\WeChat Files\Applet即可看到相关小程序了。
ShadowsocksX
mac端:https://github.com/shadowsocks/ShadowsocksX-NG
win端:https://github.com/shadowsocks/shadowsocks-windows
安卓:https://github.com/shadowsocks/shadowsocks-android
4个9(99.99)
Sentinel | Hystrix(维护状态) | Resilience4j(Spring推荐) | |
---|---|---|---|
隔离策略 | 信号量隔离(并发线程数限流) | 线程池隔离/信号量隔离 | 信号量隔离 |
熔断降级策略 | 基于响应时间、异常比率、异常数 | 基于异常比率 | 基于异常比率、响应时间 |
实时统计实现 | 滑动窗口 | 滑动窗口 | Ring Bit Buffer |
动态规则配置 | 支持多种数据源 | 支持多种数据源 | 有限支持 |
扩展性 | 支持多种数据源 | 支持多种数据源 | 有限支持 |
限流 | 基于 QPS,支持基于调用关系的限流 | 有限的支持 | Rate Limiter |
流量整形 | 支持预热模式、匀速器模式、预热排队模式 | 不支持 | 简单的 Rate Limiter 模式 |
系统的自适应保护 | 支持 | 不支持 | 不支持 |
控制台 | 提供开箱即用的控制台,可配置规则、查看秒级监控、机器发现等 | 简单的监控查看 | 不提供控制台,可对接其他监控系统 |
QPS
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。 高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。
- 响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间。
- 吞吐量:单位时间内处理的请求数量。
- QPS:每秒响应请求数。在互联网领域,这个指标和吞吐量区分的没有这么明显。
- 并发用户数:同时承载正常使用系统功能的用户数量。例如一个即时通讯系统,同时在线量一定程度上代表了系统的并发用户数。
响应时间
性能直接影响用户的感官体验,访问一个系统,如果超过5秒没有响应,绝大数用户会选择离开。
那么有哪些因素会影响系统的性能呢?
用户网络环境
请求/响应的数据包大小
业务系统 CPU、内存、磁盘等性能
业务链路的长度
下游系统的性能
算法实现是否高效
当然,随着并发数的提升,系统压力增大,平均请求延迟也会增大。
1、高性能缓存
对一些热点数据每次都从 DB 中读取,会给 DB 带来较大的压力,导致性能大幅下降。所以,我们需要用缓存来提升热点数据的访问性能,比如将活动信息数据在浏览器的缓存中保存一段时间。