`
easay107
  • 浏览: 18037 次
社区版块
存档分类
最新评论

高并发处理方案

    博客分类:
  • java
 
阅读更多

时常看到高并发的问题,但高并发其实是最不需要考虑的东西。为何,他虚无缥缈,很少有网站真的需要这些东西,而且其中很多技术,其实你已经在用了。有这个意识就够了,不需要时刻盯着这个问题。只有很少的网站真的能达到高并发。 

简单做一个归纳,从低成本、高性能和高扩张性的角度来说有如下处理方案: 
  1、HTML静态化 
  2、图片服务器分离 
  3、数据库集群和库表散列 
  4、缓存 
   5、镜像 
   6、负载均衡;一个典型的使用负载均衡的策略就是,在软件或者硬件四层交换的基础上搭建squid集群,这种思路在很多大型网站包括搜索引擎上被采用,这样的架构低成本、高性能还有很强的扩张性,随时往架构里面增减节点都非常容易。 

下面也是一个总结,跟上面部分相同。 
高并发时,性能瓶颈及当前常用的应对措施 


1.数据库瓶颈。Mysql并发链接100 

2.apache 并发链接1500 

3.程序执行效率 



1.有数据库瓶颈时,当前处理方案无外乎 主从,集群。增加cache(memcached). 

如:手机之家新系统介绍及架构分享(http://www.slideshare.net/Fenng/ss-1218991?from=ss_embed) 

就是在cache层做优化 

又拍网架构(http://www.bopor.com/?p=652) 

是以增加数据库,分表分库的方法解决。 

Sina增加了mq(消息队列)来分发数据。 

还有风站用了key-value的数据库。其实这可以理解成一个持久化的缓存。 



2.apache瓶颈。 

增加服务器。负载均衡。如sina的F5 

由于进程数的限制。会把一些基本不变的代码挪出来放到单独的服务器。如css/js/图片。 

国内成功的案例是tom的cdn 


又如nginx的横空出世和squid的反向代理都是基于这个原因出来的。 


3.php的执行效率。原因有多个。 

1).本身的效率低。 

解决的成功案例是Zend Optimizer 和 facebooke的hiphop 

Taobao是把php代码编译成模块解决效率问题。 

2). 数据库查询效率问题。如可能有order by ,group by 等Sql数据问题。 

这个其实应该归结到数据库设计问题。 


解决的办法是建立正确的索引。增加memcache.。 

对like表 用专用的sphinx.和lucence 等搜索服务。 

程序员都应该会用explain对sql语句作分析。 


说到底。解决高并发就是上面所列技术,程序员要做的就是把每个技术具体实现。 

分享到:
评论

相关推荐

    ActiveMQ高并发处理方案

    ActiveMQ高并发处理方案ActiveMQ高并发处理方案 超级字数补丁超级字数补丁

    .net高并发解决方案

    后台高并发解决方案demo,使用entity framework关系框架和rabbitmq

    java并发编程与高并发解决方案

    java 如何处理高并发编程的解决方案 视频资料齐全

    Java并发编程与高并发解决方案

    学会高并发处理思路与手段,让跳槽面试从容不迫,并发与高并发是面试的重要考察点,常问面试问题与答案都在这里了! 无论面试还是实际开发,几乎都会涉及并发相关知识及高并发相关场景处理,如果你想系统的学习一下...

    阿里P8架构师谈:高并发架构解决方案总结

    高并发是指在同一个时间点,有很多用户同时访问URL地址,比如:淘宝的双11、双12,就会产生高并发。又如贴吧的爆吧,就是恶意的高并发请求,也就是DDOS攻击。服务端:导致站点服务器/DB服务器资源被占满崩溃,数据的...

    C#编程高并发的几种处理方法详解

    在.NET的世界里面,处理高并发大致有以下几种方法: 1、异步编程 异步编程就是使用future模式(又称promise)或者回调机制来实现(Non-blocking on waiting)。如果使用回调或事件来实现(容易callback hell),不仅...

    高并发海量数据解决方案

    高并发海量数据解决方案,高并发海量数据解决方案.

    Java系统的高并发解决方法详解

    主要介绍了Java系统的高并发解决方法,内容十分丰富,在这里分享给大家,需要的朋友可以参考。

    java高并发处理方法

    总共有6小节介绍解决方案,个人觉得是挺有用的

    Java并发编程与高并发解决方案-学习笔记-www.itmuch.com.rar

    java并发编程与并发解决方案是自己多年开发和学习的笔记,有助于(ˇˍˇ) 想~进一步提高的java开发工程师或架构师深入的学习java架构并发处理。同时,它也是 在实际工作中多年高并发解决方案和经验的总结

    高并发操作SQLSERVER的解决方案

    服务器监控队列,如果队列中有请求,则处理请求。如下面的代码中,服务器就起了100个线程来监控队列,如果队列中有请求,则插入数据库。在实际的应用中,服务器监控程序也可以起到分发请求的作用,当一台服务器处理...

    打造比肩淘堡的秒杀架构实战课程-视频教程网盘链接提取码下载 .txt

    课程内容包括服务架构与基础数据处理,热点数据实时收集,经过两部分架构的整合,便进入了冷热商品抢单程序隔离,与秒杀抢单数据一致性方案的实施阶段,课程的收尾部分则以高并发处理方案为主,帮助课程提升了一个...

    基于springmvc高并发秒杀系统

    项目描述:一套以秒杀商品为目的而搭建制作的高并发系统。基本实现用户根据商家设定的库存量进行秒杀的过程。 技术描述:基于SpringMVC,Spring,MyBatis实现的高并发秒杀系统。代码设计风格基于RESTful,以c3p0...

    网站高并发架构

    网站高并发架构,如何应对大并发的处理方案,技术方案的支持

    springboot-:记录实现高并发的解决方案

    记录实现高并发的解决方案 day01 1.springboot整合druid多数据源和log4j2 (1)实现数据源,主数据库(写),从数据库(读),读写分离的方案之一 (2)mysql主从复制,保持数据一致性 (3)使用druid的监控功能 (4...

    并发处理框架

    并发处理框架,并发处理框架,并发处理框架

    ETL总体思路

    ETL总体思路,解决的主要过程,包括采集,清洗,统计,加载每一个环节

    高并发架构解析

    为了让业务可以流畅的运行并且给用户一个好的交互体验,我们需要根据业务场景预估达到的并发量等因素,来设计适合自己业务场景的高并发处理方案。在电商相关产品开发的这些年,我有幸的遇到了并发下的各种坑,这一路...

    MQ处理高并发实战案例

    在高并发的场景之下,为保证数据的安全一致性,本案例使用RabbitMQ处理高并发场景的方案。

Global site tag (gtag.js) - Google Analytics