nginx的三大应用场景

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
.cn 域名,1个 12个月
简介: nginx的三大应用场景

三大应用场景分别为:虚拟多个主机 、反向代理、负载均衡


虚拟多个主机(其实就是虚拟多个工作目录)


本质 : 主要操作server这个部分,几个虚拟空间就建立几个server


端口实现虚拟多个主机


操作:


新建虚拟工作目录空间

1dc618a0ed9580ce8bfa6facb208c08f.png5d4c6812c8535adbb050f4ddf2e1bce8.png46a9d80a6e05e4e3b19d57a0ee70bcdf.png


配置nginx.conf,

server {
       listen       8001;
       server_name  localhost;
        location / {
         root   html8001;
         index  index.html index.htm;
       }
    }
  server {
       listen       8002;
       server_name  localhost;
        location / {
         root   html8002;
         index  index.html index.htm;
       }
    }


window下启动nginx


start nginx.exe或者nginx.exe -s reload


效果:

1dc618a0ed9580ce8bfa6facb208c08f.png5d4c6812c8535adbb050f4ddf2e1bce8.png


域名实现虚拟多个主机


浏览器输入域名访问信息的原理图


46a9d80a6e05e4e3b19d57a0ee70bcdf.png

由此可见,本地模拟的话上面红色的部分需要我们来操作;


使用switchhost修改本地host

66ba272a0bfc97be54a5fa679e3d5482.png

配置nginx.conf

1dc618a0ed9580ce8bfa6facb208c08f.png

准备工作目录

5d4c6812c8535adbb050f4ddf2e1bce8.png

运行

46a9d80a6e05e4e3b19d57a0ee70bcdf.png

效果

66ba272a0bfc97be54a5fa679e3d5482.png88b9988b40447cb37c7e3c492d49867f.png


反向代理


反向代理的可以这样理解: 用户在浏览器输入很多个域名,但是这些域名通过本地host或者dns 同时指向了一个 nginx服务器。


这个服务器根据配置文件,让域名转发到不同的服务器上。


看起来好像都是nginx提供的服务,其实,nginx内部是让别的服务器提供服务。


使用很简单,基本就是修改 upstream 和 server 两个部分,server中原来的root替换成 proxy_pass。


演示:


在192.168.157.113虚拟机上部署2个tomcat

| tomcat名称 | 端口 | 页面显示 |

|–|–|–|–|

| tomcat1 | 8080 |sohu|

|tomcat2 | 8081 |sina |


1dc618a0ed9580ce8bfa6facb208c08f.png


在window上配置本地host目录

5d4c6812c8535adbb050f4ddf2e1bce8.png

修改nginx.conf配置文件,在http下添加2个 upstrem和server块

46a9d80a6e05e4e3b19d57a0ee70bcdf.png

启动nignx

start nginx.exe

或nginx.exe -s reload

浏览器输入域名看是否反向代理转发了,效果测试如下:

1dc618a0ed9580ce8bfa6facb208c08f.png


说明:反向代理成功了!


负载均衡


如果一个服务由多台服务器提供,需要把负载分配到不同的服务器处理,需要负载均衡。


upstream tomcat2 {
  server 192.168.25.148:8081;
  server 192.168.25.148:8082;
 }


默认的负载均衡的策略就是轮询的方式。


可以根据服务器的实际情况调整服务器权重。权重越高分配的请求越多,权重越低,请求越少。默认是都是1


upstream tomcat2 {
  server 192.168.25.148:8081;
  server 192.168.25.148:8082 weight=2;
    }


其他的负载均衡的策略:1.通过IP地址的hash值 做映射。2.通过URL的方式计算出Hash值 。3.随机策略。4.最少并发量


相关文章
|
8月前
|
Kubernetes 应用服务中间件 nginx
百度搜索:蓝易云【使用Kubernetes部署Nginx应用教程】
现在,你已经成功在Kubernetes集群上部署了Nginx应用。通过访问Service的外部IP地址,你可以访问Nginx服务。
92 4
|
7月前
|
Ubuntu 前端开发 JavaScript
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
|
3月前
|
Kubernetes 负载均衡 应用服务中间件
k8s学习--ingress详细解释与应用(nginx ingress controller))
k8s学习--ingress详细解释与应用(nginx ingress controller))
478 0
|
3月前
|
监控 应用服务中间件 网络安全
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
229 0
|
5月前
|
关系型数据库 应用服务中间件 PHP
如何在 Ubuntu 16.04 上使用 Nginx 部署 Laravel 应用
如何在 Ubuntu 16.04 上使用 Nginx 部署 Laravel 应用
50 1
|
5月前
|
缓存 前端开发 Java
"揭秘!SpringBoot携手Nginx,性能飙升秘籍大公开:轻松掌握配置优化,让你的应用快如闪电!"
【8月更文挑战第11天】随着微服务架构的发展,SpringBoot成为构建RESTful API的首选,Nginx则作为高性能的反向代理服务器提升应用性能。本文将探讨两者如何协同工作,包括Nginx的负载均衡策略、静态资源缓存及数据压缩配置;同时讨论SpringBoot的线程池优化、缓存策略及性能监控。通过这些方法,帮助开发者显著提高系统的整体性能和可用性。
252 1
|
5月前
|
缓存 安全 应用服务中间件
Nginx的反向代理功能有哪些应用场景呢
【8月更文挑战第22天】Nginx的反向代理功能有哪些应用场景呢
256 0
|
5月前
|
JavaScript 网络协议 前端开发
如何在单个VPS上使用nginx、forever和crontab托管多个Node.js应用
如何在单个VPS上使用nginx、forever和crontab托管多个Node.js应用
44 0
|
5月前
|
应用服务中间件 Linux 网络安全
如何在 CentOS 6.5 上使用 Unicorn 和 Nginx 部署 Rails 应用
如何在 CentOS 6.5 上使用 Unicorn 和 Nginx 部署 Rails 应用
71 0
|
5月前
|
缓存 Ubuntu 应用服务中间件
如何在 Ubuntu 14.04 上使用 Passenger 和 Nginx 部署 Rails 应用
如何在 Ubuntu 14.04 上使用 Passenger 和 Nginx 部署 Rails 应用
40 0