标签:
1.什么是高并发:
多个进程或者线程同时(或者在同一段时间内)访问同一资源会产生的并发问题。
2.高并发原理图
3.高并发初期解决方案:
3.1系统或服务器级别解决方案:
①增大服务器的CPU
②增加内存条
③增加硬盘个数,对硬盘做Radis
④换掉免费的tomcat,使用商用weblogic(美国Oracle公司出品的)
⑤增加到二块网卡
⑥聘请系统架构师优化Linux内核
⑦甚至花高价直接购买高性能的服务器
随着业务的不断增加,服务器性能很快又达到瓶颈
3.2 应用级别的解决方案
① 网页HTML静态化(需要CMS项目支持)
②图片服务器分离(常用解决方案)
③缓存(常用解决方案)上上策为分布式缓存
④ 镜像(下载较多)
4. 解决用户IP多了的办法是?
开始使用DNS:
缺点:虽然循环复用DNS是一个普遍使用的在Web服务器上负载平衡的解决方案,但 是,该方式有它自身的缺陷。循环复用DNS将传入的IP请求映射到定义的一系列循环形式的服务器。一旦发生服务器故障,循环复用DNS继续把请求发送到这 个故障服务器,一直到把该服务器从DNS中移走为止。这样许多用户必须等到DNS连接超时以后才能成功的访问目的网站。
终极解决方案:
采用负载均衡技术
4.1 负载均衡
(1) 负载均衡服务器的三大功能:
①转发:在用户请求,转发请求的功能
②故障移除:如果这一台机器挂了,负载均衡服务器不会再把请求转发到这台服务器
③恢复添加:如果这一台机器恢复正常了,负载均衡服务器会把它重新添加回来
(2)负载均衡服务器种类--通过软硬件角度:
①通过硬件来解决:NetScaler、F5、Radware和Array等商用的负载均衡器,它们性能好,但是价格比较昂贵的
②通过软件来解决(反向代理服务器 缓存服务器等),三大软件:
LVS(Linux Virtual Server):最好的软件策略,有备机有主机,无单点问题,国产(阿里章文嵩博士)开源项目,工作在网络四层上
Nginx:Ngnix有”单点故障“的问题,如果挂了,会带来很多的麻烦。到了后期Web服务器继续增加,它本身可能会成为系统的瓶颈
nginx最高支持50000个并发连接数,工作在网路七层上
Apache:web服务器第一,但不是最好的负载均衡服务器,工作在网路七层上
标签:
原文地址:http://www.cnblogs.com/winner-0715/p/4932606.html