网站首页 > 技术教程 正文
背景
最近在优化服务基础设施这块,正好有时间写一下Nginx的体会。相信大家都听说过反向代理,一提到反向代理一定会想到Nginx。什么你没听过Nginx?那么你一定听说过Apache吧!Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。Apache的发展时期很长,而且是毫无争议的世界第一大服务器。它有着很多优点:稳定、开源、跨平台等等。它出现的时间太长了,它兴起的年代,互联网产业远远比不上现在。所以它被设计为一个重量级的。它不支持高并发的服务器。在Apache上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的CPU资源,导致HTTP请求的平均响应速度降低。所以这些都决定了Apache不可能成为高性能WEB服务器,轻量级高并发服务器Nginx就应运而生了。
什么是Nginx
俄罗斯的工程师Igor Sysoev,他在为Rambler Media工作期间,使用C语言开发了Nginx。Nginx作为WEB服务器一直为Rambler Media提供出色而又稳定的服务。然后呢,Igor Sysoev将Nginx代码开源,并且赋予自由软件许可证。
由于:
- Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器(这是个开源的时代啊~)
- Nginx是一个跨平台服务器,可以运行在Linux,Windows,FreeBSD,Solaris, AIX,Mac OS等操作系统上。
- 可以作为反向代理进行负载均衡的实现,带来的极大的稳定性。
Nginx这样做的目的主要是将数据的承载量分摊到多个服务器上进行执行,这只是在服务基础设施上提高性能的优化手段之一。从下面图就可以看出:
什么是反向代理?
看了网上很多篇文章,下面这段话是我个人觉得介绍的最清楚的。
反向代理(Reverse Proxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
所以反向代理服务器是引用在服务端。决定哪台服务器提供服务。
那么我就模拟了一个基本的反向代理和负载均衡配置实现,下面是我的操作步骤:
反向代理的模拟
首先创建多个 tomcat 服务器,我这里创建了三个:
然后修改每个 tomcat 运行在不同的端口号上,每个 server.xml配置文件需要修改三处端口:
分别在 8080,8081,8082 端口配置 8006,8081,8010 端口,分别进行启动测试,但是注意防火墙配置问题。测试结果如下:
接着配置 nginx 的配置文件,进行反向代理:
最后不断访问刚配置的 test.tomcats.com 域名,发现三台 tomcat 成功运行的页面都有出现,比例大致 1:1:1:
恭喜你,配置成功了!
配置负载均衡
其实很简单,就是在刚刚配置的 nginx 文件中 的 upstream tomcats 中的 server 后面添加一个 weight, 即可代表权重。权重越高,分派请求的数量就越多。默认权重是 1。
作者:小码哥的freestyle来源:慕课网
猜你喜欢
- 2024-10-09 不懂Nginx正反向代理?没关系,只要会买东西你就明白了
- 2024-10-09 深度详解Nginx正向代理与反向代理?
- 2024-09-10 如何玩转nginx正反向代理(nginx反向代理的几种模式)
- 2024-09-10 nginx如何配置正向代理之非常简单操作
- 2024-09-10 nginx常用模块及反向代理(nginx反向代理配置实例)
- 2024-09-10 nginx代理https妈妈级教程(nginx代理https)
- 2024-09-10 图文讲解:如何使用 Nginx 反向代理、负载均衡
- 2024-09-10 nginx配置tcp代理(nginx tcp代理)
- 2024-09-10 使用 Nginx 作为你的开发代理工具
- 2024-09-10 网页服务-Nginx - 反向代理 - 基于浏览器
你 发表评论:
欢迎- 最近发表
-
- linux日志文件的管理、备份及日志服务器的搭建
- Linux下挂载windows的共享目录操作方法
- Linux系统中的备份文件命令(linux系统中的备份文件命令有哪些)
- 麒麟KYLINOS|通过不同方法设置用户访问文件及目录权限
- 「Linux笔记」系统目录结构(linux目录的结构及含义)
- linux中修改归属权chown命令和chgrp命令
- 工作日报 2021.10.27 Android-SEAndroid权限问题指南
- Windows和Linux环境下,修改Ollama的模型默认保存路径
- 如何强制用户在 Linux 上下次登录时更改密码?
- 如何删除Linux文件夹中除某些扩展名之外的所有文件?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)