发布公共页面 - 设计 - 静态与PHP生成

时间:2012-02-19 21:01:38

标签: php html

我正在尝试确定何时提供静态HTML与何时根据PHP的需要生成HTML。我的意思是当用户请求页面时,它是否已经在等待HTML格式,或者是由PHP生成,然后以HTML格式发送。

更具体地说,用户公共页面的最佳选项是什么,类似于Facebook,Linked In或类似的公共页面。

如果页面用于“内容生成器”,则需要由PHP生成,因为内容是动态的。假设或一般情况假定用户根据需要或在每次登录时更新他的数据。

如果页面是用户数据的“内容请求者”,则该页面是静态的...只要用户没有登录并更改它,它就不会改变。因此,在HTML中生成一个静态文件是有意义的,该文件提供给用户数据的请求者。假设在生成器的登录会话之间有10个左右的公共页面请求...这将节省10个服务器“加载”以生成数据,因为它们已经以静态形式等待。

请注意生成内容“生成器”的用户与请求公共类型页面的用户之间的区别 - “请求者”

我想知道是否有人可以验证这种方法。生成在“生成器”更新之间使用的HTML静态文件。这是一个验证问题。这是一种有效的方法吗?

1 个答案:

答案 0 :(得分:2)

几乎任何包含任何动态信息的网络应用程序,甚至包括在顶部打印日期日期或在底部填写版权声明等内容,都将使用动态生成的页面。

但是,这并不意味着页面会在每次页面加载时动态加载。相反,可能会有一些缓存来限制服务器的工作负载重新生成大多数静态内容。 (谈论在此处在服务器上缓存生成的内容,而不是在浏览器的缓存中)。像Smarty这样的模板系统可以做到这一点,大多数CMS系统都会有一些缓存机制来实现这一点。

您将需要研究PHP缓存机制。

但是,只有当您的网站目前没有适当缩放时,才需要这样做。换句话说,除非您的服务器无法跟上当前的负载,否则不要担心缓存。

编辑:为清楚起见,这种缓存与操作码缓存无关,而是用于预渲染为HTML计算密集型或数据库密集型数据。缓存文件将提供给客户端,直到它被认为已过期,然后必须再次进行完整页面渲染,并在数据库中访问最新数据。