nginx,http {, upstream nodejs_app {, server backend1.example.com;, server backend2.example.com;, },, server {, listen 80;,, location / {, proxy_pass http://nodejs_app;, }, },},
“Nginx做NodeJS应用负载均衡配置实例
环境准备
在开始之前,确保你已经安装了Nginx和Node.js,为了实现负载均衡,你需要至少两台运行Node.js的服务器,以下是一个简单的示例,展示如何配置Nginx来实现Node.js应用的负载均衡。
1、安装Nginx:在Ubuntu系统上,可以使用以下命令来安装Nginx:
“`sh
sudo aptget update
sudo aptget install nginx
“`
2、安装Node.js:同样在Ubuntu系统上,使用以下命令来安装Node.js:
“`sh
sudo aptget install nodejs npm
“`
3、创建Node.js应用:在两台服务器上创建一个简单的Node.js应用,创建一个文件app.js
如下:
“`js
const http = require(‘http’);
const server = http.createServer((req, res) => {
res.writeHead(200, {‘ContentType’: ‘text/plain’});
res.end(‘Hello from Node.js server
‘);
});
server.listen(8080, () => {
console.log(‘Server running at http://localhost:8080/’);
});
“`
4、启动Node.js应用:在两台服务器上分别运行以下命令来启动应用:
“`sh
node app.js
“`
5、配置Nginx:编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf
或/etc/nginx/sitesavailable/default
),添加以下内容:
“`nginx
http {
upstream node_app {
server 192.168.1.101:8080; # 第一个Node.js服务器的IP和端口
server 192.168.1.102:8080; # 第二个Node.js服务器的IP和端口
}
server {
listen 80;
server_name yourdomain.com; # 你的域名
location / {
proxy_pass http://node_app;
proxy_set_header Host $host;
proxy_set_header XRealIP $remote_addr;
proxy_set_header XForwardedFor $proxy_add_x_forwarded_for;
proxy_set_header XForwardedProto $scheme;
}
}
}
“`
6、重启Nginx:使配置生效,运行以下命令:
“`sh
sudo systemctl restart nginx
“`
通过以上步骤,你已经成功配置了Nginx作为反向代理服务器,将请求分发到两个Node.js服务器,从而实现负载均衡,你可以根据需要调整Nginx的配置,以适应不同的应用场景和性能需求。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1097878.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复