前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >宜立方商城第三天 3.Nginx

宜立方商城第三天 3.Nginx

作者头像
周杰伦本人
发布2023-10-12 14:09:50
1610
发布2023-10-12 14:09:50
举报
文章被收录于专栏:同步文章
图片服务器

传统方式:

在这里插入图片描述
在这里插入图片描述

将图片上传到Tomcat某个文件夹下 然后下载时从文件夹下下载。

图片太多时 再放Tomcat下边就不合适了

解决方案:

搭建一个图片服务器,专门保存图片。可以使用分布式文件系统FastDFS

Nginx

Dns服务器:把域名解析为ip地址。保存的就是域名和ip的映射关系。

一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。

本地测试可以修改hosts文件。

修改window的hosts文件:(C:\Windows\System32\drivers\etc)

可以配置域名和ip的映射关系,如果hosts文件中配置了域名和ip的对应关系,不需要走dns服务器。

一.Nginx

Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。

应用场景

1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。

2、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。

2.1. 通过端口区分不同虚拟机

修改Nginx的配置文件:

代码语言:javascript
复制
  #user 
  nobody;
  worker_processes  1;
   
  #error_log  logs/error.log;
  #error_log  logs/error.log  notice;
  #error_log  logs/error.log  info;
   
  #pid        logs/nginx.pid;
   
   
  events {
     
  worker_connections  1024;
  }
   
   
  http {
     
  include       mime.types;
     
  default_type 
  application/octet-stream;
   
     
  #log_format  main  '$remote_addr - $remote_user [$time_local]
  "$request" '
     
     
  #  '"$http_user_agent" "$http_x_forwarded_for"';
   
     
  #access_log 
  logs/access.log  main;
   
     
  sendfile        on;
     
  #tcp_nopush     on;
   
     
  #keepalive_timeout  0;
     
  keepalive_timeout  65;
   
     
  #gzip  on;
   
     
  server {
         
  listen       80;
         
  server_name  localhost;
   
         
  #charset koi8-r;
   
         
  #access_log 
  logs/host.access.log  main;
   
         
  location / {
     
          root   html;
              index  index.html index.htm;
         
  }
     
  }
  server {
          listen       81;
          server_name  localhost;
   
          #charset koi8-r;
   
          #access_log  logs/host.access.log  main;
   
          location / {
              root   html-81;
              index  index.html index.htm;
          }
      }
  }

一个server节点就是一个虚拟主机 root为访问目录 访问 localhost:80 访问的是html目录下的文件 访问 localhost:81 访问的是html-81目录下的文件

2.1. 通过域名区分虚拟主机 域名的配置: 192.168.25.148 www.taobao.com 192.168.25.148 www.baidu.com Nginx配置:

代码语言:javascript
复制
  #user 
  nobody;
  worker_processes  1;
   
  #error_log  logs/error.log;
  #error_log  logs/error.log  notice;
  #error_log  logs/error.log  info;
   
  #pid        logs/nginx.pid;
   
   
  events {
     
  worker_connections  1024;
  }
   
   
  http {
     
  include       mime.types;
     
  default_type 
  application/octet-stream;
   
     
  #log_format  main  '$remote_addr - $remote_user [$time_local]
  "$request" '
     
  #                  '$status
  $body_bytes_sent "$http_referer" '
     
  #                 
  '"$http_user_agent" "$http_x_forwarded_for"';
   
     
  #access_log 
  logs/access.log  main;
   
     
  sendfile        on;
     
  #tcp_nopush     on;
   
      #keepalive_timeout  0;
     
  keepalive_timeout  65;
   
     
  #gzip  on;
   
     
  server {
         
  listen       80;
         
  server_name  localhost;
   
         
  #charset koi8-r;
   
         
  #access_log 
  logs/host.access.log  main;
   
         
  location / {
              root   html;
              index  index.html index.htm;
         
  }
     
  }
     
  server {
         
  listen       81;
         
  server_name  localhost;
   
         
  #charset koi8-r;
   
         
  #access_log 
  logs/host.access.log  main;
   
         
  location / {
              root   html-81;
              index  index.html index.htm;
         
  }
     
  }
      server {
          listen       80;
          server_name  www.taobao.com;
   
          #charset koi8-r;
   
          #access_log  logs/host.access.log  main;
   
          location / {
              root   html-taobao;
              index  index.html index.htm;
          }
      }
      server {
          listen       80;
          server_name  www.baidu.com;
   
          #charset koi8-r;
   
          #access_log  logs/host.access.log  main;
   
          location / {
              root   html-baidu;
              index  index.html index.htm;
          }
      }
  }

访问 www.baidu.com 访问的是html-baidu目录下的文件 访问 www.taobao.com 访问的是html-taobao目录下的文件

/usr/local/nginx/conf/nginx.conf

3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。

反向代理:

反向代理服务器决定哪台服务器提供服务。

这里写图片描述
这里写图片描述

负载均衡:

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

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

高可用:

要实现nginx的高可用,需要实现备份机。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 图片服务器
  • Nginx
相关产品与服务
轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档