大型网站架构体系的演变(上)
互联网上有很多关于网站架构的各种分享,有些主要是从运维和基础架构的角度去分析的(堆机器,做集群),太关注技术细节实现,普通的开发人员基本看不太懂。
本文上篇将主要介绍大型网站基础架构的扩展,下篇则重点从应用程序的角度去介绍网站架构的扩展和演变。
草根时期,快速开发网站并上线。当然,通常只是先试水,用户规模也没有形成,经济能力和投入也非常有限。
有一定的业务量和用户规模了,想提升网站速度,于是,缓存出场了。
市场反响还不错,用户量每天在增长,数据库疯狂读写,逐渐发现一台服务器快撑不住了。于是,决定把DB和APP做分离。
单台数据库也感觉快撑不住了,一般都会尝试做“读写分离”。由于大部分互联网“读多写少”的特性所决定的。Salve的台数,取决于按业务评估的读写比例。
数据库层面是缓解了,但是应用程序层面也出现了瓶颈,由于访问量增大,加上早期程序员水平有限写的代码也很烂,人员流动性也大,很难去维护和优化。所以,很常用的办法还是“堆机器”。
加机器谁都会加,关键是加完之后得有效果,加完之后可能会引发一些问题。例如非常常见的:页面输出缓存和本地缓存的问题,Session保存的问题......
到这里,已经基本做到了DB层面和应用层面的横向扩展了,可以开始关注一些其它方面,例如:站内搜索的精准度,对DB的依赖,开始引入全文索引。
Java领域用的较多的是Lucene、Solr等,而php领域用的比较多的是sphinx/coreseek。
到目前为止,一个能够承载日均百万级访问量的中型网站架构基本介绍完了。当然,每一步扩展里面都会有很多技术实现的细节,后续有时间会写文章单独去剖析那些细节。
下篇我们继续。
大型网站架构体系的演变(上)相关推荐
- 大型网站架构体系的介绍
一.前言 一个成熟的大型网站(如淘宝.天猫.腾讯等)的系统架构并不是一开始设计时就具备完整的高性能.高可用.高伸缩等特性的,它是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式. ...
- 大型网站架构演变和知识体系
存爱好,作为收藏,原地址:http://www.blogjava.net/BlueDavy/archive/2008/09/03/226749.html ,同时向原创致敬 之前也有一些介绍大型网站架构 ...
- 大型网站架构演变和知识体系--转
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的.ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不 ...
- [转载]大型网站架构演变和知识体系
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的.ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不 ...
- 大型网站架构演变和知识体系(转)
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的.ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不 ...
- 大型网站 linux,大型网站架构演变
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的.ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不 ...
- 大型网站架构之架构演变
处于这个互联网开发时代,作为一名软件工程师,我们经常会听到大型网站架构这个字眼,那到底什么是大型网站呢,这样的网站又是一种什么样的架构设计呢?今天我们就开始谈谈大型网站架构设计系列,首先我们今天讲讲大 ...
- 大型网站架构演变史(含技术栈与价值观)
这篇文章是参考李智慧的<大型网站技术架构:核心原理与案例分析>和现蘑菇街CTO曽宪杰的<大型网站系统与Java中间件实践>写的一篇读书笔记. 前言 何谓大型网站?大型网站的特点 ...
- 大并发服务器架构 大型网站架构演变
服务器的三条要求: 高性能:对于大量请求,及时快速的响应 高可用:7*24 不间断,出现故障自动转移,这叫fail over(故障转移) 伸缩性:使用跨机器的通信(TCP) 另外任何网络系统结构都可以 ...
最新文章
- 简单完整地讲解tensorflow模型的保存和恢复
- 10-5 4-6 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商 (10 分)
- VMware 创建开启虚拟机时候报错的解决方式
- 飞鸽传书:造假与成功
- pytorch出现RuntimeError: CUDA out of memory.
- DTNSim.java注释摘要(学习性质,有错漏的可能,红色为不明确部分)
- mysql触发器主机自动增长_三分钟带你分清 Mysql 和 Oracle 之间的误区
- Nero Video 2019中文破解版
- 华为云文字识别服务关键技术、能力和产品落地需要注意的事宜(OCR系列二)
- 自定义SeekBar 带文字
- python里offset啥意思_深度理解Jquery 中 offset() 方法
- 餐馆点菜系统python程序_Python写一个自动点餐程序
- Payoneer取人民币全过程(ATM)
- 2020哔哩哔哩大数据面试题整理
- 软件测试:什么样的公司需要专职测试?
- Java 八种排序算法比较实践
- 【MySQL | 进阶篇】05、MySQL 视图、触发器讲解
- 丙丙-2个月面试20家大厂的知识点总结和建议(答案)
- 浪潮之巅第十三章 — 高科技公司的摇篮:斯坦福大学
- 分分钟拯救监控知识体系