高并发处理方案

从低成本、高性能和高扩张性的角度来说有如下处理方案:

1、HTML静态化
2、图片服务器分离
3、数据库集群和库表散列
4、缓存
5、镜像
6、负载均衡;一个典型的使用负载均衡的策略就是,在软件或者硬件四层交换的基础上搭建squid集群,这种思路在很多大型网站包括搜索引擎上被采用,这样的架构低成本、高性能还有很强的扩张性,随时往架构里面增减节点都非常容易。
 
高并发时,性能瓶颈及当前常用的应对措施

 

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

apache 并发链接1500

程序执行效率

 

1.有数据库瓶颈时解决方案:

分主从数据库,搭建数据库集群。

对数据库进行分表分库的方法解决。

使用cache(memcached),用cache层做优化。

使用mq(消息队列)来分发数据。

使用了key-value的数据库、做持久化的缓存。

 

2.apache瓶颈解决方案:

增加服务器,负载均衡。

由于进程数的限制,把一些基本不变的代码挪出来放到单独的服务器。


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

1).本身的效率低。

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

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

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

这个其实应该归结到数据库设计问题。 解决的办法是建立正确的索引。增加memcache.。

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

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

 

你可能感兴趣的:(高并发)