我有一个网站是相当数据库密集型,所以我试图在可能的情况下减少数据库的使用。我想要做的一个地方是在我的论坛的每个线程上。从数据库生成静态HTML文件
每次查看时都不会动态生成每个线程,而是考虑生成每个线程的静态版本,每次创建新帖子时都会覆盖该静态版本。每个线程将存储在/ html/forum文件夹中,并且在3天或更多天内未被编辑的线程将被移动到/ html/forum/archive文件夹(因此file_exists不必搜索5000个html文件每次为常见的线程)。
这里是新线程页会是什么样一个粗略的例子:
require_once('header.php');
if(file_exists('/html/forum/'.$thread_id.'.html'))
{
require_once('/html/forum/'.$thread_id.'.html');
}
elseif(file_exists('/html/forum/archive/'.$thread_id.'.html'))
{
require_once('/html/forum/archive/'.$thread_id.'.html');
}
else
{
//display something about how the thread doesn't exist
}
require_once('footer.php');
论坛只是一个例子,但我想与广大的在我的网站的网页这样做。这种方法每次动态生成内容都有什么主要缺点或优点?
谢谢!
唯一回答这个问题的方法是:做基准测试。找出哪种方法更有效率,并与之配合。 –