博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
高并发大流量专题---7、动态语言静态化
阅读量:6252 次
发布时间:2019-06-22

本文共 1184 字,大约阅读时间需要 3 分钟。

高并发大流量专题---7、动态语言静态化

一、总结

一句话总结:

缓存(静态化)的业务逻辑很简单:如果缓存时间没到,就用,如果没有或者缓存时间到了或者修改了,就重新生成

 

1、什么是动态语言静态化 及静态化适合情况?

生成为静态HTML文件:将现有PHP等动态语言的逻辑代码生成为静态HTML文件,用户访问动态脚本重定向到静态HTML文件的过程。
对实时性要求不高的页面

 

2、动态语言代码 为什么要静态化?

避免逻辑计算和数据查询:动态脚本通常会做逻辑计算和数据查询,访问量越大,服务器压力越大
避免服务器压力过大:访问量大时可能会造成CPU负载过高,数据库服务器压力过大
降低服务器压力:静态化可以减低逻辑处理压力,降低数据库服务器查询压力

 

3、动态语言代码 静态化的实现方式?

使用模板引擎:可以使用Smarty的缓存机制生成静态HTML缓存文件
利用ob系列的函数
使用Smarty的缓存机制生成静态HTML缓存文件1、smarty缓存函数$smarty->cache_dir=$ROOT."/cache";//缓存目录$smarty->caching=true;/是否开启缓存$smarty->cache_lifetime="3600";//缓存时间$smarty->display(string templateL,string cache _id[,string compile_id]]);2、smarty清除缓存函数$smarty->clear_all_cache();//清除所有缓存$smarty->clear_cache("file.html");//清除指定的缓存$smarty->clear_cache('article.html",$art_id);//清除同一个模板下的指定缓存号的缓存利用ob系列的函数ob_start():打开输出控制缓冲ob_get_contents():返回输出缓冲区内容ob_clean():清空输出缓冲区ob_end_flush():冲刷出(送出)输出缓冲区内容并关闭缓冲ob_start();输出到页面的HTML代码.…ob_get_contents();ob_end_flush();fopen()写入

 

 

 

4、利用ob系列的函数 实现php的静态化给我们什么启示?

|||-begin

ob_start();输出到页面的HTML代码.…ob_get_contents();ob_end_flush();fopen()写入

|||-end

就照着模板写或者网上找代码,实在不要太简单

 

5、利用ob系列的函数 如何判断文件的inode修改时间,以判断是否过期?

使用filectime函数

 

 

 

 

二、内容在总结中

 

 

 

 

转载于:https://www.cnblogs.com/Renyi-Fan/p/11048268.html

你可能感兴趣的文章
OSI/RM参考模型和TCP/IP协议的关系
查看>>
Android Intent用法汇总
查看>>
Vista上运行VisualStudio2005,调试asp.net程序的怪问题
查看>>
理解HTTP幂等性
查看>>
登录服务器,首先用到的5个命令
查看>>
使用PIP扩展BTARN
查看>>
GetLastError()返回值及含义
查看>>
android UI之Shape详解_GradientDrawable
查看>>
Python sh库学习 上篇
查看>>
Oracle Management Server配置
查看>>
O/R Mapping实际开发经验之谈(转)
查看>>
SPSS Clementine 数据挖掘入门 (3)
查看>>
Hosting the WCF service
查看>>
xampp下php环境的设置
查看>>
以消息为基础,以事件驱动之(message based, event driven)-- 《深入浅出MFC》
查看>>
IT公司的等级观念
查看>>
如何建立合适的索引?
查看>>
linux 多线程基础1
查看>>
详解谷歌官方教程 Android插件ADT“.NET研究” 9.0.0
查看>>
postgres中的中文分词zhparser
查看>>