当前位置: 首页 > news >正文

陕西省西安市建设局网站公司网站建设建议

陕西省西安市建设局网站,公司网站建设建议,苏州工业园区招聘官网,水土保持与生态建设网站1.Nginx介绍 Nginx是一款开源的、高性能的HTTP和反向代理服务器 1.正向代理和反向代理 正向代理#xff08;代理客户端#xff09;是一种位于客户端和目标服务器之间的中间服务器。客户端通过正向代理服务器向目标服务器发送请求#xff0c;代理服务器将请求转发给目标服…1.Nginx介绍 Nginx是一款开源的、高性能的HTTP和反向代理服务器 1.正向代理和反向代理 正向代理代理客户端是一种位于客户端和目标服务器之间的中间服务器。客户端通过正向代理服务器向目标服务器发送请求代理服务器将请求转发给目标服务器并将目标服务器的响应返回给客户端 反向代理代理服务端客户端的请求首先发送到反向代理服务器反向代理服务器再将请求转发到后端的服务器。后端服务器处理请求后将响应返回给反向代理服务器反向代理服务器再将响应返回给客户端。 2.负载均衡Load Balancing 负载均衡用于在多个服务器之间分配客户端的请求以优化资源利用、提高系统的可用性和可靠性。 主要功能 流量分配 根据预设的算法如轮询、最少连接、加权等将客户端的请求分配到不同的服务器上避免某一台服务器过载。 常见的算法包括 轮询Round Robin按顺序依次分配请求。 最少连接Least Connections优先分配到当前连接数最少的服务器。 加权轮询Weighted Round Robin根据服务器的权重分配请求。 加权最少连接Weighted Least Connections结合权重和连接数分配请求。 IP哈希IP Hash根据客户端的IP地址进行哈希计算将请求分配到固定的服务器。 故障转移Failover 当某一台服务器出现故障时能够自动将流量切换到其他健康的服务器上确保服务的持续可用。 负载均衡器会定期检查后端服务器的健康状态自动移除故障服务器并重新分配流量。 3.Nginx 主要特点 高性能 Nginx采用事件驱动的异步非阻塞架构能够处理大量的并发连接性能优于传统的Apache服务器。 它可以轻松处理数万个并发连接适合高流量的网站。 反向代理和负载均衡 Nginx可以作为反向代理服务器将客户端请求转发到后端的多个服务器上并根据配置的策略进行负载均衡。 支持多种负载均衡算法如轮询、最少连接、IP哈希等。 静态文件服务 Nginx对静态文件如HTML、CSS、JavaScript、图片等的处理非常高效可以直接从磁盘读取文件并返回给客户端减少后端服务器的负担。 2.Nginx启动和停止 1. 启动 Nginx sudo systemctl start nginx sudo nginx 说明启动 Nginx 服务。 2. 停止 Nginx bash复制 sudo systemctl stop nginx 或者 bash复制 sudo nginx -s stop 说明立即停止 Nginx 服务。 3. 重启 Nginx bash复制 sudo systemctl restart nginx 或者 bash复制 sudo nginx -s reload 说明重新加载 Nginx 配置文件而不中断现有连接。 4. 重新加载配置文件 bash复制 sudo nginx -s reload 说明重新加载 Nginx 配置文件而不中断现有连接。如果配置文件有语法错误Nginx 会拒绝加载。 3.Nginx配置 /etc/nginx/nginx.conf nginx.conf ├── 全局块 ├── events 块 └── http 块     ├── 通用设置日志、MIME等     ├── server 块一个网站     │   ├── listen / server_name     │   ├── location /静态文件或反向代理     │   └── error_page     └── ...   # 全局块 user nginx; worker_processes auto; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;# 事件块 events {worker_connections 1024; }# HTTP 块 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 /var/log/nginx/access.log main;sendfile on;keepalive_timeout 65;# 1️⃣ 定义后端服务集群upstreamupstream my_backend {server 127.0.0.1:8081 weight3 max_fails3 fail_timeout30s;server 127.0.0.1:8082 weight1;}# 服务器块server {listen 80;server_name localhost;# 位置块location / {root /usr/share/nginx/html;index index.html index.htm;}# 错误页error_page 404 /404.html;location /404.html {root /usr/share/nginx/html;}# 反向代理示例location /api/ {proxy_pass http://127.0.0.1:8080;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}} }proxy_set_header Host $host; proxy_set_header 指令用于设置转发请求时的 HTTP 头。 Host $host; 表示在转发请求时将原始请求的 Host 头设置为 $host即客户端请求的域名或 IP 地址。这确保后端服务器能够正确处理请求因为它知道请求原本是针对哪个域名的。 proxy_set_header X-Real-IP $remote_addr; 这行配置设置了 X-Real-IP 头值为 $remote_addr即客户端的真实 IP 地址。 由于 Nginx 作为代理服务器后端服务器看到的请求来源是 Nginx 的 IP 地址通常是 127.0.0.1。通过设置 X-Real-IP后端服务器可以知道实际发起请求的客户端 IP 地址。 用途配置示例静态文件服务location / { root /path/to/html; }反向代理proxy_pass http://backend;负载均衡upstream backend { server 127.0.0.1:8001; server 127.0.0.1:8002; }HTTPS 配置使用 listen 443 ssl; 和 ssl_certificate 等参数 3.Nginx安装 1. 什么是 --with-stream 这个参数是用来启用 Nginx 的 Stream 模块的。 默认情况下Nginx 只支持 HTTP、HTTPS 等基于应用层的协议。 加上 --with-stream你就可以让 Nginx 作为 TCP 或 UDP 的反向代理使用比如 代理 MySQL、Redis、FTP 等 TCP 服务 或者代理 DNS、QUIC 等 UDP 服务 2. 源码安装 Nginx 并启用 --with-stream 1 下载官方 Nginx 源码包 wget http://nginx.org/download/nginx-1.24.0.tar.gz tar -zxvf nginx-1.24.0.tar.gz cd nginx-1.24.0 2. 配置编译选项重点是加上 --with-stream ./configure --prefix/usr/local/nginx \ --with-http_ssl_module \ --with-http_v2_module \ --with-stream \ --with-stream_ssl_module 3. 编译并安装 make -j$(nproc) sudo make install 安装完成后nginx 会被装在 /usr/local/nginx 下。 4.验证安装是否成功 /usr/local/nginx/sbin/nginx -V #启动 nginxsudo /usr/local/nginx/sbin/nginx#然后查看是否启动成功ps aux | grep nginx 5.设置 nginx 命令软链接可选 sudo ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx 以后就可以直接用 nginx 命令了。 4.Nginx使用 1.准备多个后端服务 方法1使用 ncnetcat模拟 TCP 服务 使用 nc 模拟两个简单的 TCP 服务分别在端口 5001 和 5002 上监听。 # 模拟两个 TCP 后端服务器不同端口 nc -lk 5001 hello from backend 1 nc -lk 5002 hello from backend 2 -l监听模式。 -k在连接关闭后继续监听。 将字符串作为输入传递给 nc。 这样你就有两个简单的 TCP 服务分别在 5001 和 5002 上监听。 2. 配置 Nginx 的 stream 负载均衡 编辑你的 Nginx 配置文件 /usr/local/nginx/conf/nginx.conf添加如下内容保留原来的 events {} 块 stream {upstream backend_group {least_conn; # 负载均衡策略最少连接可改为 round-robin默认server 127.0.0.1:5001 weight1 max_fails2 fail_timeout20s;server 127.0.0.1:5002 weight2 max_fails4 fail_timeout40s;# fail_timeout 多长时间内允许服务器失败的次数达到 max_fails}server {listen 6000;proxy_pass backend_group;proxy_connect_timeout 3s; # 设置 Nginx 与后端服务器建立连接的超时时间tcp_nodelay on; # 禁用 Nagle 算法} } nginx -t sudo nginx -s reload 3.测试负载均衡是否生效 使用 telnet 或 netcat 连接 Nginx 暴露的端口 nc 127.0.0.1 6000 多次连接或者从多个终端连接你应该会轮流连接到 5001 和 5002分别输出不同的 hello from backend。 for i in {1..10}; do nc 127.0.0.1 6000; done 观察输出是否轮流从两个后端返回。 5.查看网络连接状态 sudo netstat -tanp 是一个常用的 Linux 命令用于显示当前系统中所有网络连接的状态。这个命令可以帮助你查看哪些进程正在监听特定端口以及当前的网络连接情况。 命令解释 netstat显示网络连接、路由表、接口统计等网络相关信息。 -t显示 TCP 连接。 -a显示所有网络连接包括监听和非监听状态。 -n显示数字形式的地址和端口而不是解析为域名或服务名称。 -p显示每个连接的进程 ID 和进程名称。
http://www.zqtcl.cn/news/379040/

相关文章:

  • 网站建设公司合同模板下载wordpress微信公众平台开发教程
  • 快速wordpress 建网站免费代理游戏
  • 网站模板 寻模板大气宽屏网站模板企业源码带后台
  • 做图片推广的网站威海高端网站建设
  • 台州网站公司建站网站首页模板图片
  • 网站建设本科毕业设计论文网址
  • 泰州企业建站程序乐清网站建设公司
  • 微信小程序网站建设哪家好郑州建设网
  • 网站流量查询站长之家自己创业做原公司一样的网站
  • 哪有专做飞织鞋面的网站广州企业网站制作哪家好
  • 如何用域名做邮箱 网站站长工具5g
  • 威海 医院网站建设宝安专业网站设计公司
  • 营销企业网站建设步骤建筑 企业官网设计
  • 网站建设的内容网站怎么做视频的软件
  • 大型网站多少钱企业咨询管理是干嘛的
  • 陕西建设银行网站小企业网站建设公司
  • linux下网站开发计算机网络技术专业主要学什么
  • 长沙网站维护公司建个门户网站
  • 做采集网站难不做科技的网站
  • 中小微企业服务平台seo怎么提升关键词的排名
  • 优秀企业网站欣赏店名设计wordpress文章列表添加字段
  • 有哪些做软件的网站服务器安装WordPress没有权限访问
  • app开发和网站开发公司网站怎么做百度竞价
  • 医疗机构网站备案网站建设面试常见问题
  • 建设网银登录网站国内欣赏电商设计的网站
  • 自适应网站优点缺点网站上的在线答题是怎么做的
  • 查询单位信息的网站免费学编程的网站有哪些
  • 建设企业网站进去无法显示wordpress 在线课程
  • 博客型网站建设广州网站建设如何做
  • 网站导航栏全屏怎么做万年网站建设