高并发处理方案
来源:互联网 发布:大朗淘宝培训 编辑:程序博客网 时间:2024/05/22 15:50
时常看到高并发的问题,但高并发其实是最不需要考虑的东西。为何,他虚无缥缈,很少有网站真的需要这些东西,而且其中很多技术,其实你已经在用了。有这个意识就够了,不需要时刻盯着这个问题。只有很少的网站真的能达到高并发。
简单做一个归纳,从低成本、高性能和高扩张性的角度来说有如下处理方案:
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语句作分析。
简单做一个归纳,从低成本、高性能和高扩张性的角度来说有如下处理方案:
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高并发处理方案
- 企业级项目高并发处理方案
- 瞬间高并发的处理方案
- 高并发情况下高性能处理方案简介
- java web开发 处理高并发的方案
- sql语句or与union all的执行效率比较
- 初学Java多线程:使用Synchronized关键字同步类方法
- ANDROID NDK文档系列--(05)Android.mk File
- Android AVD Eclipse版快捷键
- pb树的自动生成和处理
- 高并发处理方案
- 做个有用的网站和做有用的SEO
- IBM对象存放在堆上还是栈上
- Csharp: Searching Within a String
- Hibernate与iBATIS的比较
- ANDROID NDK文档系列--(06)Application.mk File
- 配置D3D8到vs2012项目中遇到的问题和解决过程
- ACM -- 凸包问题
- Csharp: Searching Within a String