分布式/集群个人见解

	分布式:牵扯到项目的拆分,将一个完整的项目拆分成多个模块,并且每个模块都能独立部署以及运行
集群:项目的部署.将一个单独的项目部署在多台服务器上叫做集群,将分布式项目中的每一个模块都部署在多台服务器上就叫:分布式+集群


假设三台服务器套接字分别为:
192.168.61.23:8080
192.168.61.24:8081
192.168.61.25:8082

这时候接收到客户端请求,我们无法使用tomcat自动制定本处理请求的服务器,这个时候我们就需要有一个统一接受请求.然后将请求分配给上面
的三台服务器


nginx:是一个优秀的web服务器,其反向代理功能十分强大,依靠其反向代理可以实现负载均衡
正向代理: 'A''B' 说你帮我从 'C' 那拿点东西                     用户知道自己使用的是代理,并且用户知道实际访问的网址
反向代理: 'A''B' 买东西,结果东西是 'B''C''D'那里取的   用户并不知道自己使用的是代理,并且用户不知道真实访问的网址

正向代理:小黄想访问www.xxx.com但是这个网站在国内禁止访问,然后小黄找了一个代理服务器,通过代理服务器访问www.xxx.com的内容
反向代理:小欢想访问www,xxx.com但是小欢找不到代理服务器,这个时候小黄注册了一个www.ggg.com的域名,然后使用反向代理将所有访问www.ggg.com的请求都转发给www.xxx.com,然后将www.ggg.com推荐给小欢
通过上面的案例我们发现反向代理可以将用户的请求转发到其他地方,并且用户不会发现.我们可以依靠反向代理以及nginx自身提供的一些机制来实现负载均衡

nginx的调度算法有4;
	1.轮询(默认调度算法,默认是平均分配请求,我们可以通过weight=x 来指定分配的记录,x的值越大代表几率越大)
	2.ip_hash 按照ip 的哈希值来分配情求,这样做的话同一个ip访问的永远是同一个服务器
	3.url_hash 按照url的请求来进行服务器的分配,例如:请求www.baidu.com/a得到全分到服务器A, www.baidu.com/b的全分给服务器B
	4.fair 根据服务器的响应结果来进行只能的负载均衡,服务器响应的速度越快被分配的请求越多
上面四种调度算法中nginx默认只支持轮询和ip_hash,如果想使用url_hash需要安装nginx的软件包,而fair的话需要下载upstream_fair
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小郑要做干饭人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值