在回答这个问题之前,我还没有开发出足以达到高服务器负载的流行方法。将我当作(叹息)刚刚降落在地球上的外星人,尽管它知道PHP和一些优化技术。
我正在用PHP开发一个工具,如果可以的话,它可以吸引很多用户。但是,尽管我完全有能力开发该程序,但在制作可以处理大量流量的东西时却一无所知。因此,这里有一些问题(也可以将这个问题转换为资源线程)。
资料库
目前,我计划在PHP5中使用MySQLi功能。但是,如何设置与用户和内容相关的数据库?我实际上需要多个数据库吗?目前,所有内容都混杂在一个数据库中-尽管我一直在考虑将用户数据分发到一个数据库,将实际内容分发到另一个数据库,最后将核心站点内容(模板母版等)分发到另一个数据库。我这样做的原因是,将查询发送到不同的数据库将减轻它们的负载,因为一个数据库= 3个负载源。如果它们都在同一服务器上,这是否仍然有效?
快取
我有一个模板系统,用于构建页面和换出变量。主模板存储在数据库中,每次调用模板时,都会调用其缓存副本(一个html文档)。目前,这些模板中有两种类型的变量-静态变量和动态变量。静态变量通常是页面名称,站点名称之类的东西,它们不经常更改。动态变量是在每次页面加载时都会更改的内容。
我对此的疑问:
说我对不同的文章有意见。这是一个更好的解决方案:每次页面加载时都存储简单的评论模板并呈现评论(通过DB调用),或者将评论页面的缓存副本存储为html页面-每次添加/编辑/删除评论时页面被重新缓存。
最后
有没有人有任何技巧/指针在PHP上运行高负载站点。我很确定这是一种可行的语言-Facebook和Yahoo! 赋予它很高的优先级-但是我应该注意哪些经验?