当前位置: 移动技术网 > IT编程>开发语言>Java > Nginx

Nginx

2019年01月18日  | 移动技术网IT编程  | 我要评论

使用nginx在没有域名的情况下要先配置host:

 

然后在nginx中设置.conf配置文件:

server {

  listen  80;

  server_name manage.hh.com;  //设置访问域名

  location / {

  #代表用户请求网址

  proxy_pass http://localhost:8091;//设置访问端口

  }

}

编辑完成,重启nginx,指令为:

1.启动nginx    start  nginx

2.关闭nginx    nginx -s stop

3.重启nginx    nginx -s reload

nginx实现负载均衡的几种策略:

1.首先是默认策略,轮询策略:

upstream hh{

server localhost:8095;

server localhost:8096;

server localhost:8097;

}

2.也可以设置权重策略

upstream hh{

server localhost:8095 weight=6;

server localhost:8096 weight=3;

server localhost:8097 weight=1;

}

3.由于session不能再多台tomcat服务器中共享数据,所以为了避免

对于集群下避免用户重复登陆,在nginx中采用了iphash的策略,

从而锁定了某一台服务器,(ip+hash)%服务器数量=绑定服务器.

也可以使用单点登陆,这里不做阐述。

 

upstream hh{

ip_hash;  //优先级高

 

server localhost:8095 weight=6;

 

server localhost:8096 weight=3;

 

server localhost:8097 weight=1;

 

}

缺点:

  1. 可以通过ip模拟进行类似攻击.不安全
  2. 可能会造成负载不均.
  3. 如果有一台服务器宕机,则可能影响整合服务.

4.访问备用机机制:

 

upstream hh{

 

ip_hash;  //优先级高

 

 server localhost:8095 weight=6 down;

 

 server localhost:8096 weight=3 down; //下线处理

 

 server localhost:8097 weight=1 backup; //访问备用机

 

 }

5.对于服务器宕机,为了实现高可用,实行心跳检测机制

将该服务器做下线处理.当服务器宕机后,运维人员修复完

成后nginx通过心跳检测,自动的发现服务,加载服务项.

最终实现了故障的启动迁移.

upstream hh {

ip_hash;

server localhost:8095 max_fails=1 fail_timeout=60s; 

server localhost:8096 max_fails=1 fail_timeout=60s;

server localhost:8097 max_fails=1 fail_timeout=60s;//实际访问网址

}

这里指访问一次,失败后就会将认为宕机的服务器下线,

60s后才会再次尝试心跳检测

 

 

server {

  listen  80;

  server_name manage.hh.com;//显示访问网址

 location / {

  #代表用户请求网址

  proxy_pass http://hh;

  #配置服务超市时间  单位 /

  proxy_connect_timeout       3;  

  proxy_read_timeout          3;  

  proxy_send_timeout          3; 

   }

}

 

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网