PHP 网站大流量与高并发的解决方法
php 网站如何应对大流量与高并发呢?
首先,确认服务器硬件是否足够支持当前的流量。
普通的P4服务器一般最多能支持每天10万地理IP,如果访问量比这个还要大,则请配置一台更高性能的专用服务器。
否则怎么优化都不能彻底解决性能问题。
其次,优化数据库访问,
前台最好完全静态化,可以完全不用访问数据库,不过对于频繁更新的网站,静态化往往不能满足某些功能,
缓存技术,将动态数据存储到缓存文件中,动态网页直接调用这些文件,而不必在访问数据库。
WordPress和Z-Blog都大量使用这种缓存技术。
如果确实无法避免对数据库的访问,那么可以尝试优化数据库的查询sql避免使用 select * from 这样的语句,每次查询只返回自己需要的结果,避免短时间内的大量sql查询,。
第三 禁止外部的盗链
外部网站的图片或者文件盗链往往会带来大量的负载压力,因此应该严格限制外部对于自身的图片或者文件盗链,好在目前可以简单的通过refer 来控制盗链,Apache自己可以通过配置来禁止盗链,IIS也有一些第三方的ISAPI可以实现同样的功能。
为防止伪造refe代码方式的盗链,可以在图片上增加水印。
第四 控制大文件的下载
大文件的下载会占用很大的流量,并且对于非SCSI硬盘来说,大量文件下载会消耗CPU,使得网站影响能力下降,因此,尽量不要提供超过2M的大文件下载,如果需要提供建议将大文件放在另外一台服务器上。
第五, 使用不同主机分流主要流量
将文件放在不同的主机上,提供不同的镜像供用户下载,比如如果觉得 RSS文件占用 流量大,那么使用FeedBurner或者FeedSky等服务将RSS输出放在其他主机上,这样别人访问的流量压力就大多集中在 FreedBurner 的主机上,RSS就不占用太多资源了。
第六 使用流量分析统计软件
在网站上安装一个流量分析统计软件,可以即时知道那些地方耗费了大量流量,那些页面需要再进行优化,因此,解决流量问题还需要进行精确的统计分析才可以,我推荐使用的流量分析统计软件是 Google Analytics(Google分析)
优化经验:
首先 学会用explain 语句分析select语句, 优化索引,表结构,其次,合理运动memcache等缓存
降低 mysql 的负载
最后 尽量用 facebook的hiphop-php编译下PHP编译,以提高程序效率。
PHP 网站大流量与高并发的解决方法的更多相关文章
- PHP解决网站大流量与高并发
1:硬件方面 普通的一个p4的服务器每天最多能支持大约10万左右的IP,如果访问量超过10W那么需要专用的服务器才能解决,如果硬件不给力 软件怎么优化都是于事无补的.主要影响服务器的速度 有:网络-硬 ...
- PHP如何解决网站大流量与高并发的问题(一)
高并发的相关概念 在某个时间点,有多少个访问量 如果一个系统的日PV在千万以上,有可能是一个高并发的系统 QPS: 每秒钟请求或者查询的数量,在互联网领域,指每秒相应请求数(指HTTP请求) 吞吐量: ...
- 转:基础篇|PHP如何解决网站大流量和高并发
基础篇 高并发架构基础概念和优化思路 高并发架构相关概念 并发,在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程 ...
- PHP如何解决网站大流量与高并发的问题(四)
动态语言的并发处理 相关概念 什么是进程.线程.协程 什么是多进程.多线程 同步阻塞模型 异步非阻塞模型 php并发编程实践 什么是进程.线程.协程 进程 进程是一个执行中的程序 进程的三态模型:多道 ...
- PHP如何解决网站大流量与高并发的问题(二)
转载:https://zhyunfe.github.io/2017/10/02/php-interview-prepare-hc-2/ 数据库缓存 相关概念 什么是数据库缓存? 为什么使用缓存 使用M ...
- PHP如何解决网站大流量与高并发的问题
首先,确认服务器硬件是否足够支持当前的流量. 普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么优化都不可能彻 ...
- PHP如何解决网站大流量与高并发的…
首先,确认服务器硬件是否足够支持当前的流量. 普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么优化都不可能彻 ...
- PHP如何解决网站大流量与高并发的问题(三)
七层负载均衡的实现 基于URL等应用层信息的负载均衡 Nginx的proxy是一个很强大的功能,实现了7层负载均衡 功能强大.性能卓越,运行稳定 配置简单灵活 能自动提出工作不正常的后端服务器 上传文 ...
- 高并发解决方案--负载均衡(HTTP,DNS,反向代理服务器)(解决大流量,高并发)
高并发解决方案--负载均衡(HTTP,DNS,反向代理服务器)(解决大流量,高并发) 一.总结 1.什么是负载均衡:当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服 ...
随机推荐
- 用CSS添加选中文字的背景色
- springmvc框架使用拦截器实现301永久重定向,其实用过滤器应该是更好
做seo的朋友提出要求 所有不带www.的访问需要301到带www的域名,以集中权重 可以使用过滤器检查servername带不带www,也可以使用拦截器 不会配置过滤器,所以先用拦截器实现吧,不过我 ...
- spring boot定时任务解析
在SpringBoot中定时任务一般使用的是@Scheduled注解. @Scheduled 1.注解内容: @Target({ElementType.METHOD, ElementType.ANNO ...
- ue4 fstring 和std::string互转
https://forums.unrealengine.com/development-discussion/c-gameplay-programming/6517-convert-std-strin ...
- 百分比宽度并排元素浮动之后,设置margin,padding换行的问题
今天遇到一个问题, 如下图,右边的div加了内边距换行: 解决方法: box-sizing: border-box;
- 第十章—DOM(一)——Document类型
DOCUMENT类型 JS通过document类型表示文档,在文档中document对象是HTMLDocument的一个实例,表示整个HTML页面.document对象是window对象的一个属性,因 ...
- 用gradle4.4转化spring,发现依赖包integration-0.9.15.jar已经不在
用gradle4.4转化spring,发现依赖包integration-0.9.15.jar已经不在仓库了,应该怎么解决? 解决办法如下: 1 修改build.gradle文件,将id " ...
- tes..
力扣刷题 二分查找法 二分查找法又称折半查找法. 优点:比较次数少,查找速度快,平均性能好: 缺点:要求待查表为有序表,且插入删除困难. 因此,折半查找方法适用于不经常变动而查找频繁的有序列表. 首先 ...
- JavaScript--取消a标签和form的submit提交默认行为
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- github遇到 non-fast-forward错误
可以参考:这里 解决过程如图所示