高并发处理方案

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

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

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的SNMP扩展。

    PHP的SNMP扩展是一种使PHP能够通过SNMP协议与网络设备进行通信的扩展程序。使用该扩展可以方便地获取和修改网络设备的配置信息,例如路由器、交换机等设备的CPU、内存、网络接口等信息,也可以进行诸如开关设备端口…

    2023年6月3日
    06
  • PHP正则表达式常用例子

    "^[0-9]*[1-9][0-9]*$"   //正整数 "^((-\d+)|(0+))$"   //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$"   //负整数 "^-?\d+$"     //整数 "^\d+(\.\d+)?$"   //非负浮点数(正浮点数 + 0) "^(([0-…

    2018年3月5日
    0335
  • 一起学习PHP的rar解压读取扩展包吧!

    一起学习PHP的rar解压读取扩展包吧!PHP的rar解压读取扩展包学习作为压缩解压方面的扩展学习,两大王牌压缩格式 rar 和 zip 一直是计算机领域的压缩终结者。rar 格式的压缩包是 Windows 系统中有接近统治地位的存在…

    2023年3月29日
    01
  • 教你用php读取elf结构

    前提知识UNIX系统的可执行文件都采用ELF格式,类型分为目标文件、可执行文件和共享库ELF格式探析之三:sections本例基于64位的小端序linux机器以读取目标文件hello.o为例#include <stdio.h> void say_hello(c…

    2022年6月25日
    0150
  • 关于php析构方法的使用详解

    析构方法说明: 1.      析构方法会自动调用 2.      析构方法主要用于销毁资源(比如释放数据库的链接,图片资源...销毁某个对象..); 析构函数会在到对象的所有的引用都被删除或者当对象被显示销毁时执行. 3.      …

    2018年9月30日
    0276
  • PHP入门指南:数组。

    PHP是一种服务器端脚本语言,适用于Web开发,它可以通过处理HTML表单、访问数据库和使用Cookies等方式来创建动态交互性Web页面。在PHP中,数组是一种非常重要的数据类型,本篇文章将为您带来PHP数组的入门指南,并…

    2023年5月22日
    03
  • 如何在PHP中使用XML函数。

    XML是一种常用的数据交换格式,而PHP中有很多处理XML数据的函数和类,使用它们可以方便地读取、解析、创建和修改XML文档。本文将介绍如何在PHP中使用XML函数。XML解析函数PHP中有三个常用的XML解析函数:simplexml_…

    2023年5月22日
    01
  • PHP入门指南:Xdebug调试工具。

    PHP是一种广泛应用的开源脚本语言,用于开发Web应用程序。Xdebug是一款优秀的PHP调试工具,它提供了很多强大的功能,非常适合用于开发和调试大型Web应用程序。本文将为大家介绍Xdebug的概念和如何使用它来进行PHP代…

    2023年5月22日
    07

联系我们

QQ:951076433

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