作者ImprezaWRX (继续收好人卡5000年)
看板Wikipedia
标题[心得] 维基媒体计划的伺服器运作概况
时间Sun Feb 26 21:04:38 2006
维基媒体计划的伺服器运作概况
维基媒体计划, 基本上使用的是 MediaWiki (
http://www.mediawiki.org/ )
这套 PHP script. 而这套 script 需要有 PHP 语言及 MySQL.
理论上, 作业系统并无限制, 只要可以运作网页伺服器(例如 Apache 或 IIS)
但大部份使用 PHP 及 MySQL 架站的人, 会以 Linux (或 FreeBSD)搭配 Apache
作为架站的平台.
维基媒体计划, 由於浏览者众, 且可人人线上编辑. 因此网页伺服器及
资料库伺服器的负担较一般静态网页的网站还重. 为了降低上述两伺服器的负担,
维基媒体计划的系统工程师采用了几个方法:
[1]使用快取伺服器: 由於 php 是动态网页语言, 因此每接到一次页面存取需求
(access request), 便要以 webserver 内的 php 程式做 parse, 从资料库
伺服器捞出需要的资料之後, 生成一个 html 档的网页传送给浏览者,
这样子会加重 CPU 的运算
负担. 因此, 就要以快取伺服器来改善. 网页经 php 生成出来以後,
若内容没变动, 则会留存於快取伺服器. 如此使用者有同一网页的 request
则不需要要再操劳到 Webserver, 而只要直接从快取伺服器抓出来传送给
浏览者即可. 有效降低 webserver 的负载.
[2]运用丛集(cluster)技术: 丛集就是一堆相同工作的电脑的集合, 维基媒体
的工程师运用丛集, 将原本需集中於一部很好的伺服器的工作, 分成许多部电脑
分担. 这样可有效降低单一电脑的工作负载, 且做到了高可用性(High Availability)
这样子当其中一部server挂掉之後, 系统不会全部都不能用.
[3]在世界各地架设 server: 目前维基媒体除了在美国佛州以外, 在欧洲的法国巴黎
以及荷兰的阿姆斯特丹都设有伺服器, 在亚洲的南韩首尔也有(是Yahoo赞助的)
由於欧洲的维基人多(前十名语言排行, 除了日文以外, 几乎是欧洲的语言)
所以在欧洲设了两处 server, 以减少往美国的频宽, 改善浏览速度.
在南韩设 server 也有同样的目的. 维基媒体可以 DNS 等手法,
依浏览需求的来源, 将其导到该地区的 server. (只是怪的是, 却不架设在条目数多
的德国与日本)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.130.153.208
1F:→ ImprezaWRX:若有看不懂语意的地方, 请尽量发问... ^^""" 02/26 21:18
※ 编辑: ImprezaWRX 来自: 220.130.153.217 (02/26 21:25)
2F:推 swds:第2点应该像是为了负载平衡而做的方式吧..个人猜的啦 02/27 08:48