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

news/2024/5/9 18:32:51/文章来源:https://blog.csdn.net/weixin_33978044/article/details/92653778

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/597002

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

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

相关文章

计算机网创建,作为一个计算机小白 怎么创建网站

从前的互联网在群众心中是高端的科技产品,若你是一个拥有个人网站的站长,还能获得别人艳羡和尊重的目光。而现在互联网科技的发展,让每个人都实现了拥有自己个人网站的梦想。所以,就需要了解一番怎么创建网站了。第一步、网页设计…

2345浏览器网址_2345网站被投放盗号病毒,360等浏览器均被牵连!(解决方案)...

火绒安全VS2345导航火绒团队在4月1日凌晨发出警报,黑客利用浏览器和flash漏洞向“2345导航”网站投放盗号病毒并正在进行传播,所有使用360、搜狗等浏览器的用户,如果flash控件为21.0.0.180~31.0.0.160版本,都将面临被感染。——火…

django 按钮的样式_Django建站历程:CKEditor的配置使用

Django建站历程:CKEditor的配置使用1、安装django-ckeditorpip install django-ckeditor2、全局settings.py添加APP需要添加 ckeditor, ckeditor_uploader 两个APP。# Application definition ​ INSTALLED_APPS [ckeditor,ckeditor_uploader ]3、指定CKEditor文件…

计算机登录网站慢手机快,电脑上网慢但手机很快有什么解决方法

使用电脑的时候,发现电脑上网速度慢,遇到这种问题的时候该怎么办?下面学习啦小编给大家讲解一下关于电脑上网慢但手机很快的解决方法,希望大家喜欢!电脑上网慢但手机很快的解决方法【手动清理浏览器缓存】其实大多数打开网页速度慢&#xff…

网站跨域访问服务器数据库,网站跨域访问服务器数据库

网站跨域访问服务器数据库 内容精选换一换配置应用系统的跨云热备容灾方案如图1所示。在如图1所示的方案中,用户的生产数据中心的应用系统使用MySQL作为数据库,应用系统与MySQL均热备容灾到华为云上。用户的生产数据中心与华为云之间使用专线进行网络连接…

常用的网站功能测试方法(已更新)和GUI基本测试内容

网站功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。常用的测试方法如下: 1、页面链接检查: 每一个链接是否都有对应的页面,并且页面之间切换工具&…

网络编程 -- 网络编程概述(ip,端口号,通信协议,hosts文件,域名,网站是如何进行访问的)

1. 网络编程的目的 传播交流信息,数据交换。 1.1 想达到这个目的需要些什么 如何准确的定位网络上的一台主机,唯一的IP地址,端口,定位到这个计算机上的某个资源。找到了这个主机,如何传输数据呢? JavaWeb…

收藏精美网页设计作品的200佳网站推荐(系列四)

这个系列将向大家分享200佳收藏精美网页设计作品的网站。网页设计师们可通过这些网站收集的优秀网页设计作品来获取灵感,进而设计出更加时尚、更有创意的作品,网页设计师也可以把自己得意的作品提交到这些网站,分享给其它的设计师朋友。如果你…

JavaWeb--web服务器讲解Tomcat讲解请你谈谈网站是如何进行访问的?

1. JavaWeb–web服务器讲解&Tomcat讲解&请你谈谈网站是如何进行访问的? 1.1 技术讲解 ASP: 微软:国内最早流行的就是ASP;在HTML中嵌入了VB脚本,ASPCOM。在ASP开发中,基本一个页面都有几千行代码,页面极其混…

词云python_如何建立关键字词库,怎么增加网站关键词库?

网站建设容易,而提升权重是需要技术操作的。实际上,网站权重的提升是一个增加网站词汇的过程。网站关键词的重要性不言而喻。SEO优化推广以关键词为中心,关键词是汉语教学的中心词。 关键字也称为关键字。它是网站的三个要素之一(…

深入浅出Symfony2 - 如何提高网站响应速度

简介\u0026#xD;Symfony2是一个基于PHP语言的Web开发框架,有着开发速度快、性能高等特点。但Symfony2的学习曲线也比较陡峭,没有经验的初学者往往需要一些练习才能掌握其特性。相对其他框架,Symfony2比较吸引人的特点有:\u0026#xD;…

通过图片优化,我将网站大小减少了62%

图片是Web提供的最基本的一种内容类型。人们都说一张图片胜过千言万语。但如果你一不小心,它也可能占用你好几兆带宽。 虽说Web图像应该尽可能清晰明快,但文件大小必须是可管理的,以便保持较快的加载速度,并且应该将数据使用保持在…

如何让 HR 找到你? 你需要进行个人SEO优化!(一)

编辑丨April Shen专栏丨九章算法互联网和许多在线招聘平台的出现为雇主和求职者提供了更多的选择。招聘人员和雇主经常通过互联网和在线招聘平台搜索适合他们公司的求职者,而根据他们不同的招聘要求,他们的搜索选项也并不仅限于谷歌和Bing,他…

假期不想在躺尸中度过?推荐你十个优质编程网站

撰文 | April专栏 | 九章算法对于软件开发人员来说,保持编程的竞技水平是非常有必要的。通过解决不同类型的编程难题,迎接不同类型的编程挑战,不仅能让你成为处理问题的高手,帮助你了解编程语言的复杂性,还能让你学习到…

038制作web服务器和发布网站

一、web服务器的作用 我们写的品优购网站,目前是放到自己电脑上的,只能自己访问浏览。 如果想要很多人访问我们的网站,可以把品优购放到服务器上,这样就可以多人访问我们的品优购网站了。 二、什么是web服务器 服务器&#xf…

python+selenium 登录xx网站

2019独角兽企业重金招聘Python工程师标准>>> 1.操作系统是MAC 64bit 自带的python,编码是UTF-8 2.在页面https://pypi.python.org/pypi/selenium 上下载selenium 3.将selenium的压缩包拷贝到python目录下,然后解压 4.更换管理员权限 5.到sele…

只知道LinkedIn的你,错过了多少机会!美帝十大求职网站收好

1、Indeed http://www. Indeed.com/ 职位搜索大佬 Indeed是美国职位搜索引擎中的元老级人物。Indeed可以为求职者提供一些宝贵的数据信息,如基本工资,人均职位和行业就业趋势。 优势 大公司HR的人气王,世界五百强的招聘信息都能在Indee…

IIS7.5中调试.Net 4.0网站出现无厘头500错误的解决办法 (转)

刚刚 部署了ii7的dll的有x86写的,就会出现以下这样的问题 iis 7 x86,Could not load file or assembly Name or one of its dependencies. An attempt was made to load a program with an incorrect format. 解决这样的,只要设置一下iis兼容x86程序就可…

设计师必备!免费下载 PSD 素材的32个网站

今天我想和大家分享一组可以免费下载 PSD 图形素材的最好的网站。 PSD 文件是非常有用的资源,因为你可以看到所有的层,使用了什么技术来创建出这些作品和效果。 某些列出的网站可能已是众所周知的,但你会惊奇地发现他们也提供免费的 PSD 文件…

十周后,62%的PHP网站将运行在一个不受支持的PHP版本上

根据W3Techs的统计数据,目前约有78.9%的网站使用PHP开发。\u0026#xD;\u0026#xD;但是,PHP 5.6.x的安全支持将在2018年12月31日正式停止,这标志着对古老的PHP 5.x分支版本的支持都将结束。\u0026#xD;\u0026#xD;也就是说,…