高并发处理方案

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

简单做一个归纳,从低成本、高性能和高扩张性的角度来说有如下处理方案:

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语句作分析。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/3866.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
上一篇 2017年11月25日 09:56
下一篇 2017年11月27日 13:28

相关推荐

  • 详解PHP中错误与异常及其相关知识

    PHP错误级别Parse error > Fatal Error > Waning > Notice > DeprecatedDeprecated 最低级别的错误(不推荐,不建议)使用一些过期函数的时候会出现,程序继续执行Notice 通知级别的错误使用一些未定义...

    2022年6月12日
    0165
  • 利用PHP8中的str_ends_with()函数判断字符串结尾。

    随着PHP8的发布,新的函数和特性不断推出,其中一个值得注意的函数是str_ends_with()。这个函数可以用来判断一个字符串是否以特定的字符串结尾,这在实际开发中经常会用到。在这篇文章中,我们将探讨str_ends_wit...

    2023年5月21日
    018
  • php如何使用Slim框架。

    PHP如何使用Slim框架?在现代的Web开发中,框架是一种非常重要的工具,可以使得我们的开发更加高效和规范,能够更好的处理请求响应的逻辑和数据。而在众多框架中,Slim框架凭借其简洁、快速、灵活和易于学习的特...

    2023年6月3日
    09
  • PHP与数据库容器的集成。

    随着云计算技术的发展,越来越多的企业开始将应用部署到容器环境中,从而实现了程序的快速交付和部署。PHP作为一种常用的Web开发语言,也在这一趋势下与数据库容器进行集成,为企业带来了更快速和可靠的应用开发...

    2023年5月21日
    01
  • PHP入门指南:PHP和Spark。

    PHP是一种非常流行的服务器端编程语言,因为它简单易学、开放源代码和跨平台。目前,很多大企业都采用PHP语言来构建应用程序,例如Facebook和WordPress等。Spark是一种快速且轻量级的开发框架,可用于构建Web应用...

    2023年5月22日
    04
  • PHP入门指南:PHP和Cobol。

    PHP和Cobol是两种非常不同的编程语言,但它们都有着自己的优势和适用范围。本文将深入探讨PHP和Cobol的区别和相似之处,并为初学者提供一份PHP入门指南。PHP是一种开源的脚本语言,通常用于Web开发。它可以嵌入HT...

    2023年5月22日
    04
  • php array_chunk函数用法介绍(实例)

    函数定义:array_chunk() 函数可以把一个数组分割为新的数组块,并返回一个多维的数值数组,从 0 开始,每个维度都包含 size 元素。(推荐教程:php图文教程)语法:array_chunk(array,size,preserve_keys);array...

    2022年6月15日
    0156
  • PHP中的测试数据管理工具。

    PHP是一种广泛应用于Web开发的脚本语言,由于其易于学习和扩展性,已经成为大多数Web开发人员的首选语言。随着Web应用程序越来越复杂,测试也变得更加重要。为了成功地测试PHP代码,测试数据是必不可少的。在本文...

    2023年5月28日
    02

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息