大型网站技术架构 大型网站架构演化

news/2024/5/20 23:51:50/文章来源:https://blog.csdn.net/liuyaokai1990/article/details/110417842

何谓大型网站

大型网站系统特点:

ps:符合这些要求的所谓大型网站真的很少,可遇而不可求也。

说到大型网站,就要先理一下大型网站的特点:高并发,大流量,高可用,海量数据等,本文根据《大型网站技术架构》一书整理如下:

初始阶段的网站架构

初始阶段都比较简单,通常一台服务器就可以搞定一个网站了,ssm-demo系列既是如此,一台服务器搞定所有演示站点,后期逐渐优化,向更优的方向进化!

1

应用服务和数据服务分离

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

2

使用缓存改善网站性能

现在的80%的业务访问都会集中在20%的数据上,网站基本上都会使用缓存,前文中也有关于缓存的相关教程,我们的perfect-ssm项目目前处于这个阶段中,通过缓存层的接入,减少部分对数据库的直接压力,提升网站的响应性能。

3

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

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

4

数据库读写分离

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

5

目前很多云服务商都有类似的产品提供,当然,也可以自己搭建数据库集群并在业务代码中进行读写分离的实现(有时间会整理相关教程)。

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

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

6

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

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

任何强大的单一服务器都满足不了大型网站持续增长的业务需求。
分布式数据库时网站数据库拆分的最后手段,只用在单表数据规模非常大的时候才使用。不到不得已时,网站更常用的数据库拆分手段是业务拆分,将不同业务的数据部署在不同的物理服务器上。

7

使用NoSQL和搜索引擎

8

搜素引擎也基本已经形成现在大型网站必须提供的功能了,网站需要采用一些非关系数据库技术如NoSQL和非数据库查询技术如搜索引擎。各种开源产品不断涌现,遍地开花:redis、mongodb、solr、elastic stack、hadoop、spark......

关于搜索引擎的接入,目前考虑在My-Blog项目中接入elastic search,优化文章搜索模块。

nosql

业务拆分

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

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

9

分布式服务

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

10

本章节思维导图

偷懒一下,直接用了前一篇文章的图:

11

整理图片整理的要吐血了。

我曾七次鄙视自己的灵魂:
第一次,当它本可进取时,却故作谦卑;
第二次,当它空虚时,用爱欲来填充;
第三次,在困难和容易之间,它选择了容易;
第四次,它犯了错,却借由别人也会犯错来宽慰自己;
第五次,它自由软弱,却把它认为是生命的坚韧;
第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;
第七次,它侧身于生活的污泥中虽不甘心,却又畏首畏尾。

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

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

相关文章

个人电脑网站的创建与发布

个人电脑网站的创建与发布 01、启动IIS管理器 IIS:即Internet Information Service,网络信息服务。一般情况下该服务是关闭的,需要打开,步骤如下: 点击"确定"后,重启电脑即可启用IIS管理器&…

php网站后台密码忘记,phpweb忘记后台密码

1.保存以下代码,将文件名修改为findpass.php ,并上传到站点程序如www目录:if(isset($_GET[‘password’])) {require(“config.inc.php”);$linkmysql_connect($dbHost,$dbUser,$dbPass);mysql_select_db($dbName);$usernametrim($_GET[‘use…

威联通nas可以做网站服务器吗,家用NAS服务器,威联通和群晖使用感受对比

目前NAS市场品牌繁多,价格不一,体验也有很大差别。那么威联通和群晖相比,使用体验方面,家用选哪款呢?客观的说,两者差不多,铁威马性价比稍高点,威联通与群晖差不多,价略高…

支付宝网站支付demo运行教程

一、前言 在一些商城网上中,必不可少的是支付,支付宝和微信比较常见,最近小编也是在研究这一块,看看支付宝怎么进行支付的,支付宝给我们提供了demo和沙箱测试。减少我们的申请的麻烦,公钥和秘钥也比之前方…

06 基于MAC和国外服务器及WordPress搭建个人网站

目录一、国外服务器二、域名购买1. 域名查询2. 直接购买三、域名解析四、SSH远程登录搬瓦工服务器1. 命令行登录五、安装LNMP六、创建虚拟主机七、安装WordPress1、下载wordpress文件2、FTP上传工具六、配置WordPress一、国外服务器 详细购买过程请参考链接,http:/…

07 基于MAC和Github及Hexo搭建个人网站

基于MAC和Hexo搭建Github个人网站一、搭建所需环境二、安装Hexo三、本地建站四、本地网站上传Github五、自定义域名绑定六、更换主题七、网站内容编辑八、修改已有Hexo主题九、制作自己的Hexo主题本篇博客是通过Github搭建个人博客,采取Hexo的主题,其MAC…

python写一个爬虫、爬取网站漫画信息_Python之dmzj漫画搜索爬虫(三)

上回我们讲到了dmzj漫画搜索爬虫(二),紧接着上一回的代码,我们继续进行深入的爬取分析,完成对于漫画的图片爬取。 图片爬取 首先,我们以第一话作为分析。如下图所示:漫画第一话 然后分析它的dom节点,看看漫…

mysql提权_黑客渗透网站实战mysql提权操作,你明白吗???

1、Mysql提权简介我们都知道网站所用脚本之间的不同权限也就大概的可以看出来,jsp 的默认权限一般都是 system 权限,而 aspx 的一般来说都高于 user 权限,一般来说。asp 和 PHP 的权限差不多,Pl ,cgi ,py 的…

“云时代”solo模式的网站创建

本文转载自: https://www.cnblogs.com/winroot/archive/2012/02/07/2341807.html 作者:winroot 转载请注明该声明。“云时代”solo模式的网站创建 以往大部分的创业者,在前期资金紧张、人力缺乏的情况下,很难去建设一个高速、稳定…

宝塔 python服务器持续运行不中断_VPS 新手建站必备——宝塔面板一键安装教程

一、宝塔面板是什么?正如你创建服务器时登录所见,服务器的系统并不像我们常见的 Windows系统一样可视化操作。而是由命令,代码操作管理,对于新手建站来说不好入门,代码太多,无法轻松管理。宝塔面板是一款服…

电子商务网站建设策划书_网站前期需要准备那些材料?

第一步制定计划书在网站建设前,良好是制定一份网站建设策划书,策划书上要明确网站建设的目标,计划具体实施过程等项目,这样,在具体实施过程中就不会手足无措了。这样,网站的框架就有了,剩下就是…

建站模板论坛_独立站=自建站?

点击上方“蓝字”,发现更多精彩昨天下午,一个做独立站的校友跟一个做视频的同学说独立站就是自建站;昨天晚上,公司请来资深的独立站老师来做内训,有同事问独立站和自建站有什么区别?作为2012年就在一家网站…

怎么把整个网站的代码中的一个词去掉_网站SEO最新优化方法,6个网站SEO的核心技巧...

如果你是一个企业主,你有建立企业官方网站的经历,在2-3年的运营过程中,我相信你至少做过一次网站改版,甚至是SEO策略的大调整。理由非常简单:当我们刚开始建立公司的时候,很多时间都是认为只要自己有一个企…

python建站费用_从零开始python django建站(一)

1.安装django pip install Django 2.检查django是否成功安装image.png 3.创建第一个项目名叫myblog django-admin.py startproject myblog [rootMyServer ~]# cd myblog/ [rootMyServer myblog]# tree . ├── manage.py └── myblog ├── __init__.py ├── settings.py…

springmuvc如何设置jsp的input跳转_Web下的301重定向如何设置?操作web网站项目一定用的到...

301重定向先来看看301重定向的定义是什么? 重定向(Redirect)就是通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向、域名的重定向)。301重定向(301redirect)是一种非常重要的“自动转向”技术,代表永久性转移(PermanentlyM…

市场营销的核心是交换_企业网站怎么优化,企业网站优化的核心是什么?

企业网站怎么优化?企业网站优化核心是制作目标关键词,制作目标关键词的站外因素是站外即锚文本建设,想要取得seo优化排名的着陆页很大程度上是首页。将首页用于企业网站的目标关键词排名,是核心的操作要点。建议相关的优化人员&am…

envi窗口滤波_「滤波」ENVI图像处理之滤波 - seo实验室

滤波1、ConvolutionFiltering (卷积滤波)卷积是一种滤波方法,它产生一幅输出图像(图像上,一个给定像元的亮度值是其周围像元亮度值加权平均的函数) 。用户选择变换核用于图像列卷积生成一个新的空间滤波图像。(1)选择 Filter > Convolutions > 一种…

php ci后端框架下载_CI框架网站前后台目录搭建

前台与后台根据功能的不同,我们将网站分为前台和后台。前台用于展示内容给用户,后台用于管理员管理网站内容。同样,在网站应用的编码实现时,我们也需要根据前台、后台的功能不同来进行代码的安排和组织。那么,使用Code…

群辉linux系统搭建网站,群晖折腾 篇一:群晖Web Station 功能搭建属于自己的照片分享网站...

群晖折腾 篇一:群晖Web Station 功能搭建属于自己的照片分享网站2020-03-03 16:42:1516点赞103收藏11评论创作立场声明:笔者之前的网站全部放在公网自从有了群晖后想着把自己网站放在自己的NAS中,这样可以节约一些成本,还可以练手…

商务通官方网站服务器版,商务通核心教程

商务通核心函数库解密格式化后的代码商务通核心函数库解密格式化后的代码,理解其中的一些函数可以帮助我们对商务通进行一些高级功能的定制。下面只简单介绍几个非常有用的函数,稍后会专门写一篇文章进行详细讲解。1.openZoosUrl函数原型:function openZ…