发表于: 2021-03-20 23:03:24
2 1255
今天完成的事情:
部署两台WEB,使用Nginx的Upstream来做负载。
用jmeter压测
明天计划的事情:
解决报错信息,
解决吞吐量过慢的情况
遇到的问题:
jmeter出现卡死或内存溢出的解决方案
收获:
在来启动tomcat:
成功运行:
8080端口
9090端口:
把阿里云安全组设置了一遍,还是不行。在本地启动项目,发现项目有问题。我是直接把war包改名的,这样做不行。还有很多要改,改完成功运行之后。放到服务器上依旧报错,最后发现是自己直接创建了一个webapps文件夹,没有往里面加下面自带的文件夹,所以无法显示
nginx负载均衡:
参考网址:https://juejin.cn/post/6844904082369413128
一、为什么进行负载均衡,原理及配置
通俗的讲就是客户端发送过来的请求,并不是直接请求目标服务器,而是有一个中转的代理服务器进行分发的。代理服务器会根据当前的服务器的使用情况和分发的规则,将请求转送到对应的负载均衡服务器上
2.1 将我们的项目部署到多台服务器上,如果其中某一台服务器宕机,并不会影响我们项目的正常运行,因为代理服务器是不会把请求转发到已经宕机的服务器上的
2.2高并发或者流量比较大的时候,可以通过负载均衡进行分流
3、负载均衡的分发方式(默认使用轮询)
3.1轮询(Round-Robin,RR):默认情况下Nginx服务器实现负载均衡的算法就是轮询,轮询策略按照顺序选择组内服务器处理请求。
如果一个服务器在处理请求的过程中出现错误,请求会被顺次交给组内的下一个服务器进行处理,以此类推,直到返回正常的响应为止。但如果所有的组内服务器都出错,则返回最后一个服务器的处理结果。
}
3.2加权轮询(Weighted Round-Robin,WRR):为组内服务器设置权重,权重值高的服务器被优先用于处理请求。此时组内服务器的选择策略为加权轮询。组内所有服务器的权重默认设置为1,即采用轮询处理请求。 例子:
}
例子:
}
3.4 least_conn:lease_conn用于为网络连接分配服务器组内的服务器,在功能上实现了最小连接数负载均衡算法,在选择组内的服务器时,考虑各服务器权重的同时,每次选择的都是当前网络连接最少的那台服务器,如果这样的服务器有多台,就采用加权轮询选择权重值大的服务器。
例子:
}
这里利用了长连接提升性能
注意:如果没有添加长连接,在压力测试(以下简称压测)环境中,可能会出现这样的情景:当压测达到一定的 QPS( Query Per Second,每秒查询率)后, Nginx服务器突然“卡死”, QPS直接降到几乎为 0,但是压测并没有停;几分钟后又会自动恢复,然后再压测一段时间后, QPS又会突然降到接近于 0。这种情况就要考虑是不是 timewait的状态过多了。
=================
=================
启动nginx
jemeter测试:
线程100,循环10
非常慢,而且还出现错误了
通过观看日志发现,代码的所耗费的时间很快 前端页面js,css所花费的时间很长 我压测需要把 js,css干扰去除
报错信息:
评论