原 第一天 负载均衡之高并发发送
 829 |  0 |  0
高并发发送:
1处:负载均衡
2处:数据库

在APP服务器多台情况下,如果用户登录,session怎么处理?
本文来源:凯哥Java(kaigejava)
个人博客:www.kaigejava.com
如下图:

说明:
如果用户登录的时候负载到01服务器上,当用户在操作其他的时候,如果被负载到02机器上。这个时候02机器上面就没有当前用户的session。用户就会被转跳到登陆页面。
解决方案:
1:可以把用户的session放置到cookie中
优点:解决了session没有的问题
缺点:session放在了用户的浏览器中,是不安全的
2:可以把用户的session放置到数据库中
优点:解决了session没有的问题
缺点:当用户量很大的时候,如果把session放置到数据库中,会造成数据库压力过大。从而使数据库运行不正常
3:可以把用户的session放在缓存服务器中
最好的解决的方案是:放在缓存服务器中。这里推荐两种缓存服务器:memcached、redis
要求:memcached/redis必须是集群
4:tomcat共享session
缺点:当tomcat数量过多的时候及其影响性能。所以不推荐
数据库并发:
1 要求:随着业务量的增大,数据库库承载能力也要增大
2 数据安全,不能丢失
3 支持备份+容灾
高并发解决发展阶段:
初级阶段:系统或服务器级别就诶接方案

总结一句话:初级阶段怼硬件(服务器级别)
接着随着业务量的不断增加,硬件成本水涨船高。就进入了第二阶段:应用级别的解决方案

总结一句话:应用级别处理。
业务量继续增加:进入第三阶段:

增加了应用服务器的数量,随之而来的问题又来了。
问题1:用户访问ip多了,怎么解决?
多台应该服务器。每台对应的ip肯定不一样。
问题2:数据库出现了瓶颈,怎么解决?
解决用户IP多的办法一:
使用DNS进行解析。
DNS定义:

DNS解析多ip思路:

循环复用DNS。
缺点:

终极解决方案:

负载均衡工作原理分析:

说明:


1:在用户请求,转发请求的功能
2:如果这一台机器挂了
负载均衡服务会不 会继续把请求转发给这台服务器呢?
答案:不会
3:如果这一台机器恢复正常了
负载均衡服务器会不会把它添加回来呢?
答案:会的
三大功能
一:转发
二:故障移除
三:恢复添加
负载均衡的种类:
1)一种是通过硬件来进行解决,常见的硬件有NetScaler、F5、Radware和Array等商用的负载均衡器,但是它们是比较昂贵的
2)一种是通过软件来进行解决的,常见的软件有LVS、Nginx、apache等,它们是基于Linux系统并且开源的负载均衡策略.
0

凯哥Java
3人已关注
 领课教育 32532
领课教育 32532
 10328
 update 47766
update 47766
 5156
 领课教育 18475
领课教育 18475
 husheng 21156
husheng 21156
 请更新代码 41839
请更新代码 41839
 凯哥Java 2425
凯哥Java 2425
 凯哥Java 2861
凯哥Java 2861
 凯哥Java 2152
凯哥Java 2152