网站静态化题库.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大型网站提速关键技术: 页面静态化、 缓存技术、 Mysql优化技术、 负载均衡、 集群、 读写分离 大型网站标准 pv值(page views):网站浏览量: uv值(unique visitor):独立访客: 独立ip: 大型网站带来的问题 大并发: 概念:在同一时间点,有多少用户同时访问网站。 大流量: 大并发,必然要导致大流量,需要高的带宽。 大存储: 数据库存储,表达到G,T级别。 大并发解决方案: 网站重新架构,分层技术,负载均衡,集群,读写分离 大流量解决方案: (1)禁止外部的盗链,或者使用非技术手段来解决,比如在图片上增加水印。 (2)网站的图片在保证能用的情况下,尽量小,一般不要超过300k. (3)进可能使用背景图 (4)把占用流量的资源,比如图片,视频,文件等放到专用的服务器上面, (5)可以对数据压缩后再传输。 (6)花钱买带宽。 大存储解决方案: (1)使用缓存技术,尽量不查数据库或少查数据库。 常见的有: 页面静态化(磁盘缓存)。 内存缓存技术(redis,memcached,mysql数据库的memory存储引擎) (2)表设计要满足3范式。 (3)要创建适当的索引(主键索引,普通索引,唯一索引,全文索引,)。 (4)分表技术 (5)分区技术,物理上把数据分到不同的空间。 (6)创建一些存储过程,函数,事务,触发器。 (7)读写分离 (8)优化sql语句,尽量自己需要的数据 (9)配置mysql.ini文件。比如配置并发量,缓存配置等。 (10)mysql服务器硬件升级。(64位处理器,多个cpu。) 页面静态化 页面静态化 概述:页面静态化分为两种。真静态,伪静态。 真静态;把一个动态的页面,转成一个静态的页面, 伪静态:从url地址上看是一个静态网址,但是实际上还是对应一个动态页面,比如。 /737-738-751-0-2585-0-0-0-0-0-1-1-1-1-19-1601-3633-0.html 页面静态化-基本原理 页面静态化-几个重要概念 (1)静态网址 (2)动态网址 (3)伪静态网址 页面静态化-分类 从形式上看: 真静态,伪静态。 从静态化的范围看: 全局静态,局部静态(页面整体静态化,页面有数据必须动态。) 页面静态化-实现页面静态化技术 实现页面静态化(真静态)有两种方法, 1、使用php的缓存的机制, 2、使用模板替换技术 页面静态化-ob缓存机制讲解 ob就是 output_buffering:输出缓存,在请求一个php的过程中,我们实际上经过三个缓存,程序缓存,ob缓存,浏览器缓存。 说明: 在php5.2这个版本 在php.ini有一个配置 output_buffering ,默认是关闭,如果是关闭,这刚才的代码就会警告. ? 如何打开ob缓存 1、配置php.ini 文件 output_buffering = 4096 2、直接在程序中 ob_start(); 页面静态化-ob缓存的几个重要规则 在服务中,如果我们开启了ob缓存,则echo数据首先放入到OB中 如何开启OB , 有两个方法1. 在php.ini 配置 ;output_buffering = 4096 这里去掉;号即可, 2. 在php页面中使用 ob_start(); ? 通过php.ini 打开的,则作用于所有的php页面 , 使用ob_start()打开则只作用于该页面 当PHP页面执行到最后,则会把ob缓存的数据(如果有的话), 强制刷新到程序缓存,然后通过apache对数据封装成http响应包,返回给浏览器 如果没有ob,所有的数据直接放入程序缓存. header信息不管你是否开启ob,总是放入到程序缓存 //开启ob缓存 ob_start(); echo hello,wrold!; header(content-type: text/html;charset=utf-8); echo 你好!; //把ob内容缓存清空,但是ob缓存还在 //ob_clean(); //把ob内容缓存清空,同时关闭ob缓存 //ob_end_clean(); //把ob缓存的内容,刷新到程序缓存,同时关闭ob缓存 //ob_end_flush(); //把ob缓存的内容,刷新到程序缓存,不关闭ob缓存 ob_flush(); echo 笑傲江湖; //获取ob缓存内容 $con=ob_get_contents(); //需要把日志,写入文件. echo print_r var_dump ,写文件 ,下断点 file_put_contents(d://hsp.log,$con); 页面静态化-ob缓存的几个重要规则 ?php ob_start(); echo abc; header(co

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档