维基查看源代码讨论查看历史
维基(Wiki)是一种在网络上开放且可供多人协同创作的超文本系统,由美国人沃德·坎宁安于1995年首先开发,这种超文本系统支持面向社群的协作式写作,同时也包括一组支持这种写作的工具。沃德·坎宁安将wiki定义为“一种允许一群用户用简单的描述来创建和连接一组网页的社会计算系统”。 Wiki站点由多人维护,每个人都可以发表自己的意见,或对共同的主题进行扩展与探讨。
目录
简介
有人认为[2],Wiki系统属于一种人类知识网格系统,可以在Web的基础上对Wiki文本进行浏览、创建、更改,而且创建、更改、发布的代价远比HTML文本小;同时Wiki系统还支持面向社群的协作式写作,为协作式写作提供必要帮助;最后,Wiki的写作者自然构成了一个社群,Wiki系统为这个社群提供简单的交流工具。与其它超文本系统相比,Wiki有使用方便及开放的特点,所以Wiki系统可以帮助我们在一个社群内共享某领域的知识。
WiKi可以调动广大网民的群体智慧参与网络创造和互动,它是web2.0的一种典型应用,是知识社会条件下创新2.0的一种典型形式。它也为教师和学生的知识共享提供了高效的平台[1],实现了快速广泛的信息整合。
架构
GeoDNS
GeoDNS是一个为BIND写的40行的小程序,可以让DNS解析的时候考虑地域因素——让用户能够访问离他地域最近的Web服务器。
LVS
LVS是一个开源的软件,可以实现Linux平台下的简单负载均衡。主要由负载调度器、服务器[2]池和共享存储构成。可喜的是,这是一款为数不多的中国人自己编写的开源软件(章文嵩发起);可惜的是,LVS仅支持Linux。
Squid
Squid大家可能都比较熟悉,Squid是一种用来缓冲Internet数据的软件。尤其适合像维基这样的遍布全球,数据中心却很集中的站点使用。在维基中,Squid缓存分为两组,一组是文档内容(多为压缩的HTML页面),另一组为媒体内容,主要包括图片等大一点的静态文件。总计有55台Squid服务器在维基运行,维基正在准备添加另外的20台。根据维基披露的资料,其中每一台服务器每秒要处理1000~2500个http请求,每台服务器承受100Mb/s~250Mb/s的流量,每台服务器负责1.4~3.2万个连接,每台Squid服务器分配出40GB作为缓存空间。硬件方面,这些Squid服务器每台都有4块硬盘,8GB内存。
维基媒体平台
维基所有的项目都运行在维基媒体平台上,这是一个遵守GPL的开源软件,以PHP写成。维基本身在使用,但很多别的机构也使用了该软件平台。在所有125台应用服务器上都安装了维基媒体平台,还有40台应用服务器马上就要上线,这些应用服务器都采用了两颗四核的CPU。这些媒体平台都由一个中心控制台控制,维基可以通过该平台部署某个应用到数百台机器上,非常方便。维基媒体平台非常注重缓存,多数缓存都放在Memcached中。
CDN
维基在美国、荷兰和韩国分别设有群集,维基CDN会根据来访IP位置的不同选择指向最近的群集。
数据存储
元数据,比如文章修改历史,文章的链接和用户资料等内容被存放于主数据库;正文存于外部存储;用户上传的图片等信息则单独存放于图片服务器。
主数据库服务器一共有15台,配置为内存4GB~16GB,6块73~146GB的硬盘和双CPU。数据库中除了有一个主数据库,还有许多复制的从数据库,这些主从数据库并不是按照服务器个数来划分的,数据库都是跨服务器运行的。
发展历史
Wiki软件是由软件设计模式社区发展出来,用来书写与讨论的模式语言。沃德·坎宁安于1995年3月25日成立了第一个Wiki网站:WikiWikiWeb,用来补充他自己经营的软件设计模式网站。他发明了Wiki这个名字以及相关概念,并且实现了第一个Wiki引擎。坎宁安说自己是根据檀香山的Wiki Wiki公车取名的。这是他到檀香山学会的第一个夏威夷语。
坎宁安说Wiki的构想是来自他自己在1980年代晚期利用苹果电脑HyperCard程序作出的一个小功能。
HyperCard类似名片整理程序,可用来纪录人物与相关事物。HyperCard管理许多称为“卡片”的数据,每张卡片上都可划分字段、加上图片、有样式的文字或按钮等等,而且这些内容都可在查阅卡片的同时编辑修改。HyperCard类似于后来的网页,但是缺乏一些重要特征。
坎宁安认为原本的HyperCard程序很有用,但创造卡片与卡片之间的链接却很困难。于是他不用HyperCard程序原本的创造链接功能,而改用“随选搜索”的方式自己增添了一个新的链接功能。用户只要将链接输入卡片上的一个特殊字段,而这个字段每一行都有一个按钮。按下按钮时如果卡片已经存在,按钮就会带用户去那张卡片,否则就发出哔声,而继续压着按钮不放,程序就会为用户产生一张卡片。
坎宁安将这个程序与他自己写的人事卡片展示给许多朋友看,往往会有人指出卡片之中的内容不太对,而他们也可以当场利用HyperCard初始的功能修正内容,以及利用坎宁安加入的新功能补充链接。
坎宁安后来在别处又写了这样的功能,而且这次他还增加了多用户写作功能。新功能之一是程序会在每一次任何一张卡片被更改时,自动在“最近更改”卡片上增加一个连往被更改卡片的链接。坎宁安自己常常看“最近更改”卡片,而且还会注意到空白的说明字段会让他想要描述一下更改的摘要。
系统特点
WiKi是一个供多人协同写作的系统。与博客、论坛等常见系统相比,WiKi有以下特点:
使用方便
维护快速:快速创建、更改网站各个页面内容。
格式简单:基础内容通过文本编辑方式就可以完成,使用少量简单的控制符还可以加强文章显示效果。
链接方便:通过简单的“条目名称”,可以直接产生内部链接。外部链接的引用也很方便。
自组织
自组织的:同页面的内容一样,整个超文本的相互关联关系也可以不断修改、优化。
可汇聚的:系统内多个内容重复的页面可以被汇聚于其中的某个,相应的链接结构也随之改变。
可增长
可增长:页面的链接目标可以尚未存在,通过点选链结,我们可以创建这些页面,使系统得以增长。
修订历史:记录页面的修订历史,页面的各个版本都可以被取得。
开放性
开放的:社群内的成员可以任意创建、修改、或删除页面。
可观察:系统内页面的变动可以被来访者清楚观察得到。
WiKi支持面向社群的协作式写作,同时也包括一组支持这种写作的辅助工具。有人认为,Wiki系统属于一种人类知识的网络系统,我们可以在Web的基础上对Wiki文本进行浏览、创建、更改,而且这种创建、更改、及发布的代价远比HTML文本小;与此同时Wiki系统还支持那些面向社群的协作式写作,为协作式写作提供了必要的帮助;最后,Wiki的写作者自然构成了一个社群,Wiki系统为这个社群提供了简单的交流工具。与其它超文本系统相比,Wiki有使用简便且开放的优点,所以Wiki系统可以帮助我们在一个社群内共享某个领域的知识。
由于Wiki的自主性,可增长以及可观察的特点,使Wiki本身也成为一个网络研究的对象。对Wiki的研究也许能够让人们对网络的认识更加深入。
另外因为WiKi是一个群体协作的平台,所以它还有平等、共享的特点。
参考文献
- ↑ 打造高质量行业交流平台,加强企业交流,促进行业发展 ,搜狐,2023-02-24
- ↑ CE30089 EMERSON 终端服务器硬件和软件要求 ,搜狐,2023-09-06