Linux安装Nginx及配置TCP负载均衡

目录

  • 1、安装编译工具及库文件
  • 2、下载解压Nginx压缩包
  • 3、Ngnix配置Tcp负载均衡
  • 4、配置Ngnix的文件
  • 5、Nginx启动

1、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel pcre-devel

2、下载解压Nginx压缩包

wget https://nginx.org/download/nginx-1.18.0.tar.gztar -zxvf nginx-1.18.0.tar.gz

3、Ngnix配置Tcp负载均衡

[root@Zhn software]# cd nginx-1.18.0
[root@Zhn nginx-1.18.0]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  Makefile  man  objs  README  src
[root@Zhn nginx-1.18.0]# ./configure --with-stream
[root@Zhn nginx-1.18.0]# make && make install

编译完成后,默认安装在了/usr/local/nginx目录。

[root@Zhn nginx-1.18.0]# cd /usr/local/nginx/
[root@Zhn nginx]# ls
conf  html  logs  sbin

可执行文件在sbin目录下,配置文件在conf目录下的nginx.conf

4、配置Ngnix的文件

打开conf/ngnix.conf文件
在这里插入图片描述添加红色方框内的配置
逐个解析:

upstream MyServer{server 127.0.0.1:6000 weight=1 max_fails=3 fail_timeout=30s;server 127.0.0.1:6002 weight=1 max_fails=3 fail_timeout=30s;}# 表示Nginx负载两台服务器,weight表示权重
# 两台服务器的权重都是1,说明来十个连接时,Nginx会把十个连接平均分发到每台服务器,即每台服务器处理5个连接
# 如果weight=1,weight=2,说明1/3的连接分发到第一台服务器,2/3的连接分发到第二台服务器
# max_fails=3 表示允许最大失败次数为 3,即连续请求失败的最大次数;
# fail_timeout=30s 表示失败超时时间为30秒,在该时间内如果失败次数超过最大失败次数,则会暂时将该服务器标记为不可用。
server{proxy_connect_timeout 1s;listen 8000;proxy_pass MyServer;tcp_nodelay on;}# proxy_connect_timeout 1s;:设置代理服务器连接超时时间为 1 秒,即如果连接后端服务器的时间超过这个设定时间,
# 则会视为连接超时。# listen 8000;:指示 Nginx 在 8000 端口上监听传入的请求。# proxy_pass MyServer;:实现了请求的反向代理,将来自客户端的请求转发到上游服务器组 MyServer 中的服务器上。# tcp_nodelay on;:开启了 TCP 的 nodelay 功能,这个功能可以减少数据传输的延迟,尤其适用于实时性要求较高的连接。

5、Nginx启动

1、首先使用命令查看当前Linux下所有的TCP连接

[root@Zhn sbin]# netstat -tanp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:40488         0.0.0.0:*               LISTEN      1724/node           
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1406/sshd           
tcp        0      0 127.0.0.1:42438         127.0.0.1:40488         ESTABLISHED 12357/sshd: root@no 
tcp        0      0 127.0.0.1:40488         127.0.0.1:42436         ESTABLISHED 1724/node           
tcp        0     96 192.168.230.132:22      192.168.230.4:49282     ESTABLISHED 12504/sshd: root@pt 
tcp        0      0 127.0.0.1:41616         127.0.0.1:40488         ESTABLISHED 1653/sshd: root@not 
tcp        0      0 192.168.230.132:22      192.168.230.4:50593     ESTABLISHED 1653/sshd: root@not 
tcp        0      0 127.0.0.1:40488         127.0.0.1:41614         ESTABLISHED 1724/node           
tcp        0      0 127.0.0.1:41614         127.0.0.1:40488         ESTABLISHED 1653/sshd: root@not 
tcp        0      0 192.168.230.132:22      192.168.230.4:65205     ESTABLISHED 12357/sshd: root@no 
tcp        0      0 127.0.0.1:40488         127.0.0.1:41616         ESTABLISHED 2036/node           
tcp        0      0 127.0.0.1:40488         127.0.0.1:42438         ESTABLISHED 12417/node          
tcp        0      0 127.0.0.1:42436         127.0.0.1:40488         ESTABLISHED 12357/sshd: root@no 
tcp6       0      0 :::3306                 :::*                    LISTEN      1613/mysqld         
tcp6       0      0 :::22                   :::*                    LISTEN      1406/sshd           
[root@Zhn sbin]# 

可以发现Nginx没有启动

2、启动Nginx

[root@Zhn sbin]# ./nginx
[root@Zhn sbin]# netstat -tanp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      12536/nginx: master 
tcp        0      0 127.0.0.1:40488         0.0.0.0:*               LISTEN      1724/node           
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      12536/nginx: master 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1406/sshd           
tcp        0      0 127.0.0.1:42438         127.0.0.1:40488         ESTABLISHED 12357/sshd: root@no 
tcp        0      0 127.0.0.1:40488         127.0.0.1:42436         ESTABLISHED 1724/node           
tcp        0     96 192.168.230.132:22      192.168.230.4:49282     ESTABLISHED 12504/sshd: root@pt 
tcp        0      0 127.0.0.1:41616         127.0.0.1:40488         ESTABLISHED 1653/sshd: root@not 
tcp        0      0 192.168.230.132:22      192.168.230.4:50593     ESTABLISHED 1653/sshd: root@not 
tcp        0      0 127.0.0.1:40488         127.0.0.1:41614         ESTABLISHED 1724/node           
tcp        0      0 127.0.0.1:41614         127.0.0.1:40488         ESTABLISHED 1653/sshd: root@not 
tcp        0      0 192.168.230.132:22      192.168.230.4:65205     ESTABLISHED 12357/sshd: root@no 
tcp        0      0 127.0.0.1:40488         127.0.0.1:41616         ESTABLISHED 2036/node           
tcp        0      0 127.0.0.1:40488         127.0.0.1:42438         ESTABLISHED 12417/node          
tcp        0      0 127.0.0.1:42436         127.0.0.1:40488         ESTABLISHED 12357/sshd: root@no 
tcp6       0      0 :::3306                 :::*                    LISTEN      1613/mysqld         
tcp6       0      0 :::22                   :::*                    LISTEN      1406/sshd           
[root@Zhn sbin]# 

3、Nginx的其他命令

./nginx -s reload   # 重新加载配置文件启动
./nginx -s stop     # 关闭nginx服务器# 注意:每次修改Nginx配置文件后,需要调用./nginx -s reload命令平滑重启

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/766342.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5.7、【AI技术新纪元:Spring AI解码】Prompts

翻译: Spring AI 中的 Prompts 处理 Prompts 是指导 AI 模型生成特定输出的输入。这些 Prompts 的设计和措辞显著影响模型的响应。 在与 Spring AI 模型交互的最基础层面上,处理 Prompts 有点类似于在 Spring MVC 中管理“视图”。这涉及创建带有动态内容占位符的大量文本。…

游戏中线上已有功能迭代的兼容问题

在游戏开发过程中,难免会有对线上已有功能进行迭代优化的需求。站在后端的角度来看,难点在于,如何在保证不会影响到用户的前提下,顺利进行对功能的升级和优化。关键在于兼容。 兼容分为功能配置、代码、用户数据和接口的兼容性。…

rider下ef core迁移

新建数据库 create database mockstu新建web项目 安装Microsoft.EntityFrameworkCore.SqlServer包 设置连接字符串 新建model using MockStuWeb.Models.EnumTypes; using System.ComponentModel.DataAnnotations;namespace MockStuWeb.Models {/// <summary>/// 学生…

C程序编译、链接与项目构建

C程序编译、链接与项目构建 摘要C编译环境静、动态库介绍gcc与g和程序编译、链接Visual Studio创建和链接库动态库的显示调用 Make介绍安装使用 CMake介绍安装使用构建方式内部构建外部构建构建使用静/动态库常用[系统]变量常用指令CMake模块 Make与CMake的联系与区别 摘要 本…

Golang-web开发好用的依赖库

读取配置库Viper 能够读取很多格式的配置文件&#xff0c;并帮我们格式化。 github文档地址 go get github.com/spf13/viper 日志记录Zap go get -u go.uber.org/zap zap 包提供快速、结构化、分级的日志记录。 文档地址

国内AI领域的新星:Kimi与GPT的较量,谁主沉浮?

近期&#xff0c;国产大型人工智能模型Kimi频繁成为众多行业领袖讨论的焦点。这些来自不同领域的专家和领袖们&#xff0c;似乎都在对Kimi的性能和能力给予高度评价。在这两年国产AI模型的快速发展中&#xff0c;尽管市场上涌现出了许多新面孔&#xff0c;但真正能够在技术和应…

LeetCode-热题100:79. 单词搜索

题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格是那些水平相…

Day45:WEB攻防-PHP应用SQL二次注入堆叠执行DNS带外功能点黑白盒条件

目录 PHP-MYSQL-二次注入-DEMO&74CMS DEMO-用户注册登录修改密码 CMS-74CMS个人中心简历功能 PHP-MYSQL-堆叠注入-DEMO&CTF强网 Demo 2019强网杯-随便注&#xff08;CTF题型&#xff09; PHP-MYSQL-带外注入-DEMO&DNSLOG(让服务器主动把数据交出去) 知识点&…

索引设计原则与性能优化实践

索引设计原则与性能优化实践是数据库管理中的关键领域&#xff0c;旨在提升数据库查询和更新操作的效率。以下是几个核心的索引设计原则与相关的性能优化实践&#xff1a; 索引设计原则&#xff1a; 1. 唯一性索引 - 如果存在一个字段的值是唯一的&#xff08;例如身份证号、学…

动手学深度学习|notebook教程

D2L.AI&#xff5c;《动手学深度学习》Notebooks 目录 面向中文读者的能运行、可讨论的深度学习教科书 含 PyTorch、NumPy/MXNet、TensorFlow 和 PaddlePaddle 实现 被全球 70 多个国家 500 多所大学用于教学 github 下面是整理好的&#xff0c;可以直接运行的notebook 0 前…

TensorFlow打印网络参数的个数

注意区分打印网络参数的个数和打印网络参数&#xff08;权重和偏置&#xff09;的个数 在TensorFlow 1.0 中&#xff0c;可以通过使用tf.trainable_variables()获取模型的所有可训练参数&#xff08;即权重和偏置&#xff09;&#xff0c;并使用sess.run()在会话中运行这些变量…

Ps:色彩平衡

色彩平衡 Color Balance命令可改变阴影、中间调、高光中的颜色平衡&#xff0c;从而改善图像的整体色彩表现或为图像创造特定的氛围。 Ps菜单&#xff1a;图像/调整/色彩平衡 Adjustments/Color Balance 快捷键&#xff1a;Ctrl B Ps菜单&#xff1a;图层/新建调整图层/色彩平…

如何实现JWT Token的自动续期

实现JWT&#xff08;JSON Web Tokens&#xff09;Token的自动续期主要涉及到两个关键的概念&#xff1a;刷新令牌&#xff08;Refresh Token&#xff09;和访问令牌&#xff08;Access Token&#xff09;。访问令牌通常有较短的有效期&#xff0c;而刷新令牌有较长的有效期。当…

Oracle Data Guard部署

Oracle的主备DG搭建 1. 修改主机名,同步时间 主库IP&#xff1a;192.168.100.137 备库IP&#xff1a;192.168.100.138配置主机名(主库) Hostname zygjpdb vim /etc/hosts 192.168.100.137 zygjpdb 192.168.100.138 zygjsdbvim /etc/sysconfig/network HOSTNAMEzygjpdb ------…

文件上传二—WEB攻防-PHP应用文件上传中间件CVE解析第三方编辑器已知CMS漏洞

演示案例&#xff1a; PHP-中间件-上传相关-Apache&NginxPHP-编辑器-上传相关-第三方处理引用PHP-CMS源码-上传相关-已知识别到利用 #PHP-中间件-上传相关-Apache&Nginx 复现漏洞环境&#xff1a;vulhub &#xff08;部署搭建看打包视频&#xff09; 由于PHP搭建常用中…

二叉树:递归算法的理解和运用

上一期中&#xff0c;我们了解到了堆&#xff0c;堆的结构也可以叫做二叉树的顺序结构&#xff0c;今天我们一起来看看二叉树的链式结构&#xff0c;我们还要学习有关于二叉树递归的书写。 首先&#xff0c;这是一个二叉树&#xff0c;但是对于普通的二叉树来说&#xff0c;增…

【Linux】详谈命令行参数环境变量

目录 一、浅谈命令行参数 二、环境变量 2.1环境变量的内涵以及理解 2.2PATH环境变量&#xff1a; 2.3输入程序名就能运行我们的程序 2.4系统中的环境变量 2.5导出环境变量 三、main函数的第三个参数 3.1获得环境变量的三种方法 四、本地变量 一、浅谈命令行参数 我们的m…

用自己的想法模拟实现库函数(2)完结篇

哈喽&#xff0c;小伙伴们&#xff0c;我们又见面了&#xff0c;上次讲完strlen函数的模拟实现后&#xff0c;发现还比较受大家欢迎&#xff0c;因此&#xff0c;本次给大家带来模拟函数的完结篇。温馨提示&#xff1a;本篇文章将会涉及到可能还未学到的实用性较高的库函数哟。…

Leetcode刷题笔记——动态规划之子序列问题篇

Leetcode刷题笔记——动态规划之子序列问题篇 一、回文 第一题&#xff1a;回文子串 Leetcode647. 回文子串&#xff1a;中等题 &#xff08;详情点击链接见原题&#xff09; 给你一个字符串 s &#xff0c;请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着…

案例实践 | 基于长安链的煤质检测智慧实验室

案例名称-煤质检测智慧实验室 ■ 建设单位 国能数智科技开发&#xff08;北京&#xff09;有限公司 ■ 用户群体 煤炭生产单位、电力单位、化工单位等产业链上下游单位 ■ 应用成效 化验效率提升50%&#xff0c;出验时间缩短40%&#xff0c;提高化验数据市场公信力 案例…