www.wikipedia.org
相比同流量级别有百度、谷歌,背后市值数百亿美金、员工上万、服务器无数,服务器数百台,维护人员十余名。
网站建立在LAMP上。
架构组成部分:
GeoDNS:可将域名解析到离用户最近的服务器
LVS: 基于Linux的开源负载均衡服务器
Squid: 基于Linux的开源反向代理服务器
Lighttpd: 开源的应用服务器(更轻量、更快速,许多网站使用它作为图片服务器)
PHP: Web应用程序开发语言
Memcached: 开源分布式缓存系统
Lucene:开源全文搜索引擎
MySQL:开源关系数据库管理系统
性能优化策略:
前端性能优化:
(网站前端,一般包括DNS服务、CDN服务、反向代理服务、静态资源服务等)
CDN服务(缓存热点词条内容页面、部署在离客户浏览器最近的地方)
-->LVS(负载均衡)-->反向代理服务器Squid集群(核心,缓存热点词条)
-->LVS(负载均衡)-->Apache应用服务器集群
CDN缓存准则:
1、内容页面不包括动态信息
2、内容页面有唯一REST风格URL
3、HTML响应头写入缓存控制信息
服务器性能优化:
PHP服务器(硬件改善)
APC(PHP字节码缓存模块,加速代码执行减少资源消耗)
Imagemagick(图片处理转化)
Tex(进行文本格式化,特别是将科学公式内容转换成图片格式)
替换PHP字符串查询函数strtr(),使用更优化的算法重构
后端性能优化:
后端服务(包括缓存、存储、数据库)
主要手段:使用缓存
缓存使用策略:
1、热点特别集中的数据直接缓存到应用服务器的本地内存
2、缓存数据的内容尽量使应用服务器可以直接使用的格式,如HTML
3、使用缓存服务器存储session对象
4、memcache持久化连接
MySQL优化:
1、使用较大的服务器内存
2、使用RAID0磁盘阵列加速磁盘访问(降低数据库持久可靠性,弥补手段,主从复制,数据库异步备份等)
3、数据库事务一致性设置在较低水平,加快宕机恢复速度
4、如果master数据库宕机,立即将应用切到salve数据库,同时关闭数据库写服务。
(业务后退一步,技术前进一大步)
相关推荐
10 维基百科的高性能架构设计分析 11 海量分布式存储系统Doris的高可用架构设计分析 12 网购秒杀系统架构设计案例分析 13 大型网站典型故障案例分析 第4篇 架构师 14 架构师领导艺术 15 网站架构师职场攻略 ...
维基百科的高性能架构设计分析11.海量分布式存储系统Doris高可用架构设计分析12.网购秒杀系统架构设计案例分析13.大型网站典型故障案例分析14.架构师领导艺术15.网站架构师职场攻略16.漫画网站架构师
Twitter CEO:维基百科关站抗议做法很愚蠢.docx
标题"wiki_00数据集:维基百科,用于语言模型"指出,这是一个专门设计用于训练和评估语言模型的数据集。它来源于维基百科,这是一个广泛使用的在线百科全书,拥有丰富的多语言文本资源,非常适合进行自然语言处理...
2. 社区驱动的研究:维基百科的研究社区正在逐步增长,越来越多的研究者对维基百科的研究表现出兴趣和投入。这种社区的形成,促进了研究者之间的合作、各种研究计划之间的协同效应,以及继续创新的意愿。 3. 研究...
维基百科下载及阅读方法简单说明 维基百科是一个在线百科全书,提供了丰富的信息资源,内容详实且多样化,对获取事情的真相具有很大的帮助。然而,维基百科上的信息不一定都是正确的,也有一些是不和谐的。加之,...
维基百科离线版 一个为了方便本地浏览维基百科查询资料而制作的 开源软件,程序的原理是利用维基百科 kiwix-tools 中的其中一个小工具:kiwix-serve 读取 .zim 格式的维基百科数据库文件,从而实现 http 方式多终端...
维基百科类目层次结构提取是一项重要的数据挖掘任务,它涉及到对维基百科庞大的信息库进行有组织的、结构化的访问。在这个过程中,我们可以利用HTMLParser这个Java库来解析HTML文档,提取出维基百科页面中的类目链接...
中文维基百科hosts文件,拷贝到C:\Windows\System32\drivers\etc目录下,经测试可使用
维基可视化WikiViz:维基百科文章标题和嵌入式链接的图形可视化。 可视化和探索维基百科文章中嵌入链接的图表。 最初的维基百科文章标题是中心节点,嵌入链接的标题显示为分布在中心节点周围的子节点。 单击子节点以...
iOS版的维基百科应用程序是专为苹果用户设计的,旨在为他们提供便捷、高效的移动设备阅读体验。这款应用充分利用了iOS平台的特性,包括优化的界面设计、离线阅读功能以及与Apple生态系统无缝集成。 ### 应用特点 1...
【wikistack:维基百科的全栈实现】 在IT领域,"wikistack"是一个专有名词,指的是一个基于JavaScript技术实现的全栈项目,旨在重现维基百科的某些核心功能。全栈开发是指涵盖前端用户界面到后端服务器、数据库以及...
维基百科的发展历程是从2001年1月15日开始的,当时维基百科正式启动,英文维基百科在2001年2月12日达到1,000页,9月7日达到10,000条条目。在计划的第一年,有超过20,000条条目被创建,平均每月1,500条。2002年8月30...
CSS则负责页面的样式设计,包括颜色、布局和字体等,使得维基百科页面既信息丰富,又具有良好的可读性和视觉吸引力。 总的来说,"WikipediaPT:维基百科"是一个基于HTML技术构建的庞大知识库,它体现了互联网时代的...
【标题】:“wikipedia-clone:维基百科克隆” 这个项目被称为“wikipedia-clone”,顾名思义,它是一个模仿维基百科网站的实现。这个克隆版旨在提供一个基本的、类似维基百科的用户体验,让用户能够浏览、搜索和...
这是最新的中文维基百科语料库(截至2019年2月20日),可以用来训练word2vec词向量,做文本分类,官网特别难下载,因此分享出来
《维基百科百科问答数据集》是一个专门为机器学习和自然语言处理任务设计的数据资源,它包含了大量的问答对,这些问题和答案都来源于广博且权威的维基百科平台。这个数据集是研究人员和开发者构建智能问答系统、信息...
标题中的“英文维基百科语料库txt(9)”指的是一个包含多个英文维基百科文本数据的压缩包,这些数据经过一系列预处理步骤,包括分词、去停用词、转换为小写、词干提取和词形还原,使得它们更适合用于自然语言处理...