+ -
当前位置:首页 → 问答吧 → PHP大型项目构建和优化

PHP大型项目构建和优化

时间:2008-03-03

来源:互联网

我写的是我这一年看过书和我自己想的总结, 有不对的地方请大家指出, 给我意见。

1。 服务端的配置和优化 (大纲, 不包含细节)

Squid Proxy Server (这个好像是细节)

所谓程序服务端,也就是程序所在的主机。 当用户使用浏览器(IE, Firefox)来读取你网站的网页的时候, 你的程序服务器就开始工作了, 程序服务器就要对这个网页进行编译, 从MYSQL读取数据, 然后把HTML文件发给你的浏览器来读。 当别人的浏览器也读取这个网页的时候, 程序服务端又要对同一个网页进行处理后返回HTML, 如果网页的内容是一样的话,而在同一时间内有大量相同的请求的话, 就浪费了大量的CPU来进行编译, 我们可以使用Squid Proxy Server对文件进行缓存, 这样不仅减轻程序服务端的负担, 也可以使用户更快的浏览页面。

服务器群组

尽管有Squid的帮助, 一个程序服务器很容易就达到了它的瓶颈(普通的程序服务器在同时处理100个请求的时候就已经非常的吃力了), 这时候就需要加入更多的程序服务器进行分担, 每个程序服务器上都含有一样的程序。 在ALEXA前10名的网站的服务器都是以万计的。 这样每当用户向程序服务端要求网页的时候, 就会被平均的分配到所有的服务器上。进行平均分配可以通过不同的方法来实现, 有Layer 4 , Layer 7 , 和Round robin DNS等等。

MYSQL 群组

程序服务器在进行网页编译的时候, 很多时候要对数据库服务器进行查询, 这样也就需要到数据库服务器群, 加上使用MYSQL Cluster的技术就可以达到要求了

Content Delivery Network (CDN)

在处理图片, 音乐, 还有电影这些大型文件的时候, 使用普通的方法就十分的吃力, 不仅它们要占据大量的空间, 在给用户传输的时候, 要长时间的占用大量的带宽, 这是一般服务器消耗不起的, 这样我们就要让更加专业的大公司来处理这个问题了,在美国有Amazon,Limelight 等大公司提供content delivery network 包含无限空间, 和专业的服务(在中国的不大清楚, 但是肯定有的, 要不然视频网站是吃不消的)。 他们在全球都布置有光纤网络, 可以通过专门的技术, 可以对全球不同的地域进行优化。价钱大部分是取决于使用量上, 贵是一定的拉。

带宽

Tier 1 的服务商, 在美国象Optimum Online , 有提供达到几十GB的带宽给商业和政府,应该够了, 不够我也不知道怎么办了。

大环境应该就是上面这些, 如果有什么其他需要考虑的因素(请不要提具体操作的细节问题), 请大家提一下。 包含细节的文章等等会在将来继续写完。

如果有高手配置过大型网站的话, 讲讲你是怎么具体实现的, 使用什么服务商等等。

作者: joedarkangel3   发布时间: 2008-03-03

特别希望了解国内大型网站的总体结构. 好让我们饱饱眼福.

作者: twotimes   发布时间: 2008-03-04

太长见识了。

作者: kaikailog   发布时间: 2008-03-11

藏了
好东西啊!!

作者: naodai   发布时间: 2008-03-19

貌似  只是 说说  没有啥具体的呢 很多细节没有 说明白

作者: zshtom   发布时间: 2008-03-21

好呀定

作者: 逆雪寒   发布时间: 2008-03-21