1.服务提供者不可用(硬件故障,程序bug,缓存击穿,用户的大量请求等)
1.请求缓存:就是支持将一个请求(还有其中的地址URL)与它的返回结果存入缓存,当下次在查询的时候,我们因为储存了请求,就可以根据请求直接返回结果,这就无需再浪费资源了。
2.请求合并:就是我们将相同的请求进行合并吗,然后调用批处理接口。我的理解就是车站排队,去同一个地方的在一个站口上车,而不合并就是一个大大的站口,势必会造成拥挤,也浪费人力资源来进行维护。
3.服务隔离:限制调用分布式服务的资源,某一个调用的服务出现问题不会影响其他服务调用;
线程池隔离:就是一条服务开启一条线程,每个线程之间互不相关,就算有个出错了也无需影响到整个进程。
信息量隔离:每次调用线程,当前请求通过计数信号量进行限制,当信号量大于最大请求数时,进行限制,后面的请求全部调用fallback接口快速返回。(后面的都不要了)
4.服务熔断:一般是指软件系统中,犹豫某些因素是的服务出现了过载现象,为防止整个系统故障,从而采用的一种保护措施。,也被称为过载保护(感觉和电路的短路蛮像的,出问题了,那条线断开,过一会再开)
Apache JMeter 应用程序是开源软件,100% 纯 Java 应用而设计的负载测试功能行为和测量性能。它最初是为测试 Web 应用程序而设计的,但此后已扩展到其他测试功能。
Apache JMeter 可用于测试静态和动态资源,Web 动态应用程序的性能。它可用于模拟服务器,服务器组,网络或对象上的繁重负载,以测试其强度或分析不同负载类型下的整体性能。
安装:在https://jmeter.apache.org/官网中安装windows版本:
解压一个apache-jmeter-5.3.zip,进入其中的bin目录下,登入cmd控制台,输入命令:
jmeter.bat
但是在此之前我们还需要修改一些配置才能使用这个软件: 在bin中,打开jmter.properties文件,修改两处代码,可以通过编辑->查找,快速锁定。
我们修改完这两处就可以了,第一个更改编码机为UTF-8,第二个修改完把英文改为中文。
现在我们就可以进入控制台使用了。
这样就可以了。点击上方的那个开始按钮就可以使用了。