小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
自己搭建了一个基于SpringBoot+Spring Security+MyBatis+MySQL+Redis+Thymeleaf的博客网站。上线个人云服务器后,发现服务器访问慢。个人服务器是1核2G的,1M宽带,虽然服务器是低配的,但是可以通过优化代码,中间件等手段,来提升性能。我会讲解个人网站功能的开发与一些性能优化的经历。
这篇主要讲Nginx中间件优化
Nginx主要从负载均衡,限流,限制单个IP的并发数等方面来讲解
一、Nginx负载均衡
负载均衡,用白话讲,就是一个机器分身成几个机器,有一样的效果,帮你分担活。
以前的文章讲了负载均衡SpringBoot项目在Linux部署用Nginx实现负载均衡Https访问,这篇当作复习,大概讲解一下。
1、假如把java项目打包成3个,3个端口不一
2、nginx配置信息,主要配置ip+端口号
1 | java复制代码upstream my_blog { #upstream节点名称,my_blog给后面负载均衡使用 |
3、检验并修改好配置信息,启动Nginx
1 | java复制代码进入配置文件目录 |
总的思路是这些,具体可以看以前写的博客
二、限流,禁封IP
ip黑名单,如果发现某个ip持续不断的访问,甚至他的访问造成你的服务器压力很大,CPU持续增加,那么你可以拉近你的黑名单里。
1 | java复制代码# 在http模块添加以下配置即可 |
甚至可以限制用户访问的次数,并发数,等等,如果别人用Jmeter做压测,那么你的服务器很大程度扛不住。
具体配置如下
1 | java复制代码#定义一个名为allips的limit_req_zone用来存储session,大小是10M内存, |
本文转载自: 掘金