大型网站技术架构(一)大型网站架构演化

news/2024/5/20 15:11:51/文章来源:https://blog.csdn.net/weixin_34380948/article/details/92649981

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

 看完了有一本书,就应该有所收获,有所总结,最近把《大型网站技术架构》一书给看完了,给人的印象实在深刻,再加上之前也搞过书本上讲的反向代理和负载均衡以及session独立存储和缓存,因此书本看起来还是挺通俗易懂的,而且作者李智慧给人的印象(书本)也挺深刻的,我从这本书中也学到了许多,了解的许多,但是理解还是比较抽象的,写出来才是真正的理解,因此准备写一系列的博客来介绍和加深理解大型网站技术架构。

        说道大型网站,就的先说大型网站的特点:高并发,大流量,高可用,海量数据等。下面就说说大型网站的架构演化过程吧。

1、初始阶段的网站架构

            初始阶段都比较简单,通常一台服务器就可以搞定一个网站了,看图。

2、应用服务和数据服务分离

        随着网站业务的发展,一台服务器逐渐不能满足需求;这时候就需要将应用和数据分离,如图。

3、使用缓存改善网站性能

        毫无疑问,现在的网站基本上都会使用缓存,即:80%的业务访问都会集中在20%的数据上。

4、使用应用服务器集群改善网站的并发处理能力

         因为单一应用服务器能够处理的请求连接有限,在网站访问高峰时期,应用服务器会成为整个网站的瓶颈。因此使用负载均衡处理器势在必然。通过负载均衡调度服务器,可将来自浏览器的访问请求分发到应用的集群中的任何一台服务器上。

 

5、数据库读写分离

         当用户达到一定规模后,数据库因为负载压力过高而成为网站的瓶颈。而目前主流的数据库都提供主从热备功能,通过配置两台数据库主从关系,可以将一台数据库的数据更新同步到另一台服务器上。网站利用数据库这一功能实现数据库读写分离,从而改善数据库负载压力。

 

 

6、使用反向代理和CDN加上网站相应

       提高网站的访问速度,主要手段有使用CDN和反向代理。

      CDN和反向代理的基本原理都是缓存,区别在于CDN部署在网络提供商的机房,而反向代理是部署在网站的中心机房,当用户请求到达中心机房后,首先访问的反向代理,如果反向代理缓存着用户请求的资源,则直接返回给用户。

7、使用分布式文件系统和分布式数据库系统

    任何强大的单一服务器都满足不了大型网站持续增长的业务需求。

     分布式数据库时网站数据库拆分的最后手段,只用在单表数据规模非常大的时候才使用。不到不得已时,网站更常用的数据库拆分手段是业务拆分,将不同业务的数据部署在不同的物理服务器上

 

8、使用NoSQL和搜索引擎

       搜素引擎也基本已经形成现在大型网站必须提供的功能了,网站需要采用一些非关系数据库技术如NoSQL和非数据库查询技术如搜索引擎。

 

9、业务拆分

        大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将真个网站业务拆分成不同的产品线。

         具体到技术上,也会根据产品线话费,将一个网站拆分成许多不同的应用,每个应用独立部署维护。应用之间可以通过超链接建立管理,也可以通过消息队列进行数据分发,当然最多的还是通过访问同一个数据存储系统来构成一个关联的完整系统。

 

 

10、分布式服务

       由于每一个应用系统都需要执行许多相同的业务操作,比如用户管理,session管理,那么可以将这些公用的业务提取出来,独立部署。

转载于:https://my.oschina.net/zhanghaiyang/blog/595815

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_755028.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu下用webbench 网站压力测试

2019独角兽企业重金招聘Python工程师标准>>> wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd webbench-1.5 make && make install 如果在编译webbench的时候,出现/bin/sh: ctags: …

使用网站作为WCF服务宿主的几种做法

内容摘要 这一篇文章探讨使用网站作为WCF服务宿主的几种做法,我将从最基本的svc文件的方式,演化成为无svc文件的方式,并且在最后介绍REST与路由规则结合的做法。 本文所讲解的WCF功能,是基于WCF 4.0这个版本。我所采用的开发工具是…

关注经典:CSS Awards 获奖网站作品赏析《第一季》

每天都有很多新的网站推出,其中不乏一些设计极其优秀的作品。这个系列的文章,我为大家挑选了2012年赢得 CSS Awards 大奖的50个最佳网站。这些鼓舞人心的网站作品代表了网页设计的最高水平,相信你可以得到很大的启发。 您可能感兴趣的相关文章…

移动端开发-各类免费收费api及网站工具收藏

为什么80%的码农都做不了架构师?>>> 一 、api 1、https://www.juhe.cn/ 跟百度api集市差不多,超级赞,做好认证就行了,我有20认证能用的免费api 2、http://apistore.baidu.com/astore/servicesearch?word%E5%85%8D%E…

网页设计与网站建设(CS3中文版)从新手到高手

为什么80%的码农都做不了架构师?>>> 网页设计与网站建设(CS3中文版)从新手到高手 本书是一本典型的案例实例教材,从网页制作和网站建设的应用实践出发,详细介绍如 何开发博客、餐饮、健康、企业门户、…

国内政府网站群云门户建设标准

我国政府网站已经走过了以技术为导向的发展阶段,现在正处于以内容为导向向以服务为导向过渡的关键时期。政府网站如何满足网站用户的实际需求,达到服务性政府的建设要求将是当今政府亟待解决的问题。美国政府推出“云优先”发展战略和云服务门户&#xf…

MVC与单元测试实践之健身网站(八)-统计分析

2019独角兽企业重金招聘Python工程师标准>>> ​统计分析模块与之前的内容相对独立,用于记录并跟踪各部位围度的变化。还需提供对所作计划的分析,辅助使计划更合理。 一 围度记录 这儿可以记录各项身体围度指标,现在包括体重在内身…

不能忍!花钱买的视频网站VIP账号别人在用,都是撞库惹的祸

你的牙刷被别人偷偷用了,是不是不能忍? 那你花钱买的视频网站VIP账号呢?有些人可能能忍,然而有些人却不能。 央视财经频道曝光了一则消息——你买的视频网站会员VIP 别人也在用,里面的当事人田女士不能忍,因为她的其他网银密码、…

优秀网站看前端 —— 小米Note介绍页面

刚开始经营博客的时候,我写过不少“扒皮”系列的文章,主要介绍一些知名站点上有趣的交互效果,然后试着实现它们。后来开始把注意力挪到一些新颖的前端技术上,“扒皮”系列便因此封笔多时。今天打算重开“扒皮”的坑,不…

作业4: 用户体验分析——以 “师路南通网站” 为例

一、作业目标 基于实例分析,体会用户体验设计的 7 条准则。二、作业要求 针对师路南通 ,开展UX分析。PS:对比另外2个学习网站:1. UMU学习平台 ;2. 学生安全教育平台基于7 条UX评价准则,分析“师路南通” 在…

Scala Playframework 访问HTTPS网站证书错误解决方案

2019独角兽企业重金招聘Python工程师标准>>> 使用Playframework访问https网站报如下错误: Cause: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to fi…

python模拟自动登录网站(urllib2)

不登录打开网页: import urllib2 request urllib2.Request(http://www.baidu.com) response urllib2.urlopen(request).read() print response 保存网页图片(https://www.baidu.com/img/bd_logo1.png): picurl https://www.bai…

如何一步步构建大中型网站架构

(转载自http://kb.cnblogs.com/page/99549/) 之前我简单向大家介绍了各个知名大型网站的架构,MySpace的五个里程碑、Flickr的架构、YouTube的架构、PlentyOfFish的架构、WikiPedia的架构。这几个都很典型,我们可以从中获取很多有关…

5 个鲜为人知的黑科技网站,强大到不敢想象

点击上方“Java基基”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏 原创 | Java 2019 超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数据库…

大型网站架构系列:负载均衡详解(下)

大型网站架构系列:负载均衡详解(下): " 《大型网站架构系列:负载均衡详解(上)》 一、软件负载均衡概述 硬件负载均衡性能优越,功能全面,但是价格昂贵,一般适合初期或…

团队-爬虫电影网站-最终程序

托管平台地址:https://gitee.com/w789369/PaChong/tree/master 小组名称:简单 小组成员合照:无 程序运行方法:python 程序运行示例及运行结果:转载于:https://www.cnblogs.com/lws1111/p/7944180.html

网站用户的注册与管理

django-registration安装与设置 执行命令 pip install django-registration此次frameword 会运用django原有的auth架构 在默认的情况下,django-registration只需要在setting.py中设置一个常数,用来指定启动码的天数, ACCOUNT_ACTIVATION_DAYS…

网站代码用什么打开_网站404页面有什么用?

在网站优化过程中,有很多知识点。今天我们要谈的是404页,404页在访问客户端的页面时,服务器出现无法正常显示的信息,或者服务器无法应对,客户输入错误的链接也出现404页但是,朋友们发现很多网站都制作了404…

项目案例:部署社交网站

前言:本次项目是搭建一套动态网站服务器平台,在上面运行社交网站(例如:人人网,开心网,天涯论坛)。相关知识点在前面的课程中都有所涉及,今天的实验就是一个综合运用,体现…

首次配置网站报错原因?

首次搭建自己的网站,在本地wamp服务上没有任何错误,但是同步到阿里云上就报错了,是什么原因呢? 原来,首次搭建网站要给予某些目录权限,否则权限无法运行,肯定报错的。我是把Application下的目录…