Nginx配置文件详解中文版

#定义Nginx运行的用户和用户组,系统中必须有此用户,可以是nologin user www www; #nginx进程,一般设置为和cpu核数一样 worker_processes 8; #cpu亲和力配置,让不同的进程使用不同的cpu 默认情况下可能多个进程跑在一个CPU上或某一核上,导致Nginx进程使用硬件资源不均匀, 此次优化是尽可能地分配不同的Nginx进程给不同的CPU处理 两颗CPU参数配置 worker_processes 2; worker_cpu_affinity 0101 1010; 四颗CPU参数配置 worker_processes 4; worker_cpu_affinity…

Continue Reading →

Nginx upstream的5种权重分配方式分享

1、轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2、weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 例如: upstream backend { server 192.168.0.14 weight=10; server 192.168.0.15 weight=10; } 3、ip_hash 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 例如: upstream backend…

Continue Reading →

Redis+Tomcat+Nginx集群实现Session共享

一、Session共享使用tomcat-cluster-redis-session-manager插件实现 插件地址见:https://github.com/ran-jit/tomcat-cluster-redis-session-manager 该插件支持Tomcat7、Tomcat8、Tomcat9 二、tomcat-cluster-redis-session-manager详解 1、解压后的文件如下: conf目录下有一个redis-data-cache.properties :Redis的配置文件 #– Redis data-cache configuration #- redis hosts ex: 127.0.0.1:6379, 127.0.0.2:6379, 127.0.0.2:6380, …. redis.hosts=127.0.0.1:6379…

Continue Reading →

Nginx+Tomcat资源定向与负债均衡

一、前言 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。 反向代理方式实际上就是一台负责转发的代理服务器(Nginx),貌似充当了真正服务器的功能,但实际上并不是,代理服务器只是充当了转发的作用,并且从真正的服务器(Tomcat)那里取得返回的数据。这样说,其实nginx完成的就是这样的工作。我们让nginx监听一个端口,譬如80端口,但实际上我们转发给在8080端口的tomcat,由它来处理真正的请求,当请求完成后,tomcat返回,但数据此时没直接返回,而是直接给nginx,由nginx进行返回,这里,我们会以为是nginx进行了处理,但实际上进行处理的是tomcat。 实际上我们配置了Nginx反向代理后,系统的物理结构可能是下面这样子的,当我们访问一个域名/IP地址时,实际访问的是我们配置的Nginx服务器,Nginx服务器的真实身份只是代理,它代理了许多不同的真正服务器(如下图中的Tomcat,Resin,IIS等)。 虽然配置反向代理比较麻烦,但是它的作用性还是很大滴。一方面是为了安全性考虑,另一方面是提供应用的访问性能。说到上面的方式,也许很多人又会想起来,这样可以把静态文件交由nginx来进行处理。对,很多用到nginx的地方都是作为静态伺服器,这样可以方便缓存那些静态文件,比如CSS,JS,html,htm等文件。 二、基础教程 1、前期环境准备 准备两个解压版tomcat,同时启动两个tomcat。 nginx官网下载解压版nginx。 创建一个简单的web项目。为了直观的区分访问的哪个tomcat,在页面写上标记8081、8082。 分别部署到对应的tomcat下。如图:​​​​ ​ 2、配置nginx 进入nginx-1.10.1\conf路径,修改配置文件nginx.conf。 1、配置服务器组,在http{}节点之间添加upstream配置。(注意不要写localhost,不然访问速度会很慢) upstream nginxDemo { server 127.0.0.1:8081;…

Continue Reading →