网站整体结构规划(网站总体架构设计)
三石哥 2023-01-01 21:02:01 202
如何打造一流的网站结构?
细节决定成败,对于优化同样适用。做优化有许多的细节是需要注意的。比如网站结构优化就有很多的细节需要我们注意。
网站的结构就是由链接、导航、页面构成了网站的结构。网站的功能不同,结构也不同,所以构造网站结构时不要照搬别人的网站,对于别人适合自己不一定适合。
下面是深圳网站制作公司华专网络分析自己在接到一个网站时是如何优化网站结构的:
第一、url的处理。现在搜索引擎对动态的url抓去不是很理想的,所以在网站建立时就让程序人员,把网站的url做成静态的或者是伪静态的,把网站的flash减少的最低,检查网站的死链接、重复页面,并把这些提交给搜索引擎。
第二、网页的代码。网页的代码要做到在不影响页面的同时做到最精简,去掉不必要的代码。一般一个正常的页面代码大约就是100k左右。如果冗余代码过多,造成我们的网站的打开速度过慢影响网站的用户体验。
第三、网站的导航。网站的导航是网站首页通向各个栏目的大门,通过导航能够进入到网站的各个栏目,让用户快速地找到自己需要的信息。所以导航要放到网站的显眼位置,核心位置,让用户一眼就能够找到。
第四、面包屑导航。面包屑的作用就是告诉用户他们目前在网站中的位置以及如何返回。所以在配置面包屑的时候我们要注意,要足够清晰,让用户一眼就能明白,同时一个良好的面包屑路径,将会诱使用户点击上一级页面去浏览感兴趣的相关主题。这样,从而,可以降低网站的总体跳出率。
第五、Robot文件。网站建设好以后我们要对蜘蛛的抓取进行设置。比如用户的登录页面、密码等这些东西是百度蜘蛛不能抓取的。
第六、单一页面的链接。对于这个检查我们用站长工具中的死链接检查工具检查页面的连接是否过多。一般一个页面连接数量控制在100个左右。
第七、网站内链。网站的内链是否建设良好,良好的内链可以减少蜘蛛的工作负荷,更加容易地抓取收录我们网站的内容。所以内链的建设,我们要下点功夫。
第八、标签的运用。H标签是否运用得当。搜索引擎会对H标签、B标签这样的强化标签给予足够的重视,因此应该在网页中合理运用这些标签进行强化。对于我们的网站优化也是有一些好处的,当然所有东西都是适量最好。
第九、互动栏目的运用。在一些网站中我们可以考虑加入一些互动栏目。这样可以更好地了解用户的需求,增加网站的人气。有利于网站的排名。
网站结构是一种外在的表现,表现的对象是搜索引擎和用户,一个好的网站架构可以让搜索引擎更加的抓取和收录。并且在SEO上有一个好的排名。二是易于用户体验,用户使用网站很舒服,能轻松地完成自己的需求。并且完成网站自身既定的转化。
不同网站,它的属性也是不同的。所以网站的结构不可能都是一样的。要根据自己网站的作用来确定网站的结构,并且对一些网站细节上的东西要做专门的处理。一个良好的网站架构,对于优化来说就是成功了一半,所以我们要做好网站架构的优化。
大型网站系统的演变全过程与架构设计详解
大型网站都是一步步演变过来的,架构师需要了解整体架构的演变过程@mikechen
大型网站系统的特点
1.高并发,大流量
需要面对高并发用户,大流量访问。
2.高可用
系统 7 x 24 小时不间断服务。
3.海量数据
需要存储、管理海量数据,需要使用大量服务器。
4.用户分布广泛,网络情况复杂
许多大型互联网站都是为全球用户提供服务的,用户分布范围广,各地网络情况千差万别。在国内,还有各个运营商网络互通难的问题。
5.安全环境恶劣
由于互联网的开放性,使得互联网站更容易受到攻击,大型网站几乎每天都会被黑客攻击。
6.需求快速变更,发布频繁
和传统软件的版本发布频率不同,互联网产品为快速适应市场,满足用户需求,其产品发布频率极高。一般大型网站的产品每周都有新版本发布上线,中小型网站的发布更频繁,有时候一天会发布几十次。
7.渐进式发展
几乎所有的大型互联网网站都是从一个小网站开始,渐进地发展起来的,好的互联网产品都是慢慢运营出来的,不是一开始就开发好的,这也正好与网站架构的发展演化过程对应。
1.初始阶段的网站架构
大型网站都是从小型网站发展而来,网站架构也是一样,是从小型网站架构逐步演化而来。
小型网站最开始没有太多人访问,只需要一台服务器就绰绰有余,这时的网站架构如下图所示:
应用程序、数据库、文件等所有资源都在一台服务器上。
2.应用服务和数据服务分离
随着网站业务的发展,一台服务器逐渐不能满足需求:越来越多的用户访问导致性能越来越差,越来越多的数据导致存储空间不足。
这时就需要将应用和数据分离。应用和数据分离后整个网站使用3台服务器:应用服务器、文件服务器和数据库服务器,这3 台服务器对硬件资源的要求各不相同:
应用服务器需要处理大量的业务逻辑,因此需要更快更强大的CPU;
数据库服务器需要快速磁盘检索和数据缓存,因此需要更快的磁盘和更大的内存;
文件服务器需要存储大量用户上传的文件,因此需要更大的硬盘。
此时,网站系统的架构如下图所示:
应用和数据分离后,不同特性的服务器承担不同的服务角色,网站的并发处理能力和数据存储空间得到了很大改善,支持网站业务进一步发展。
但是随着用户逐渐增多,网站又一次面临挑战:数据库压力太大导致访问延迟,进而影响整个网站的性能,用户体验受到影响,这时需要对网站架构进一步优化。
3.使用缓存改善网站性能
网站访问的特点和现实世界的财富分配一样遵循二八定律:80%的业务访问集中在20%的数据上。
既然大部分业务访问集中在一小部分数据上,那么如果把这一小部分数据缓存在内存中,就可以减少数据库的访问压力,提高整个网站的数据访问速度,改善数据库的写入性能了。
网站使用的缓存可以分为两种:缓存在应用服务器上的本地缓存和缓存在专门的分布式缓存服务器上的远程缓存。
本地缓存的访问速度更快一些,但是受应用服务器内存限制,其缓存数据量有限,而且会出现和应用程序争用内存的情况。
远程分布式缓存可以使用集群的方式,部署大内存的服务器作为专门的缓存服务器,可以在理论上做到不受内存容量限制的缓存服务。
使用缓存后,数据访问压力得到有效缓解,但是单一应用服务器能够处理的请求连接有限,在网站访问高峰期,应用服务器成为整个网站的瓶颈。
4.使用应用服务器集群改善网站的并发处理能力
使用集群是网站解决高并发、海量数据问题的常用手段。
当一台服务器的处理能力、存储空间不足时,不要企图去更换更强大的服务器,对大型网站而言,不管多么强大的服务器,都满足不了网站持续增长的业务需求。
这种情况下,更恰当的做法是增加一台服务器分担原有服务器的访问及存储压力。
对网站架构而言,只要能通过增加一台服务器的方式改善负载压力,就可以以同样的方式持续增加服务器不断改善系统性能,从而实现系统的可伸缩性。
应用服务器实现集群是网站可伸缩架构设计中较为简单成熟的一种,如下图所示:
通过负载均衡调度服务器,可以将来自用户浏览器的访问请求分发到应用服务器集群中的任何一台服务器上,如果有更多用户,就在集群中加入更多的应用服务器,使应用服务器的压力不再成为整个网站的瓶颈。
5.数据库读写分离
网站在使用缓存后,使对大部分数据读操作访问都可以不通过数据库就能完成,但是仍有一部分读操作(缓存访问不命中、缓存过期)和全部的写操作都需要访问数据库,在网站的用户达到一定规模后,数据库因为负载压力过高而成为网站的瓶颈。
目前大部分的主流数据库都提供主从热备功能,通过配置两台数据库主从关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。
网站利用数据库的这一功能,实现数据库读写分离,从而改善数据库负载压力,如下图所示:
应用服务器在写数据的时候,访问主数据库,主数据库通过主从复制机制将数据更新同步到从数据库,这样当应用服务器读数据的时候,就可以通过从数据库获得数据。
为了便于应用程序访问读写分离后的数据库,通常在应用服务器端使用专门的数据访问模块,使数据库读写分离对应用透明。
6.使用反向代理和 CDN 加速网站响应
随着网站业务不断发展,用户规模越来越大,由于中国复杂的网络环境,不同地区的用户访问网站时,速度差别也极大。有研究表明,网站访问延迟和用户流失率正相关,网站访问越慢,用户越容易失去耐心而离开。
为了提供更好的用户体验,留住用户,网站需要加速网站访问速度,主要手段有使用CDN 和方向代理,如下图所示:
CDN 和反向代理的基本原理都是缓存。
CDN 部署在网络提供商的机房,使用户在请求网站服务时,可以从距离自己最近的网络提供商机房获取数据
反向代理则部署在网站的中心机房,当用户请求到达中心机房后,首先访问的服务器是反向代理服务器,如果反向代理服务器中缓存着用户请求的资源,就将其直接返回给用户
使用 CDN 和反向代理的目的都是尽早返回数据给用户,一方面加快用户访问速度,另一方面也减轻后端服务器的负载压力。
7.使用分布式文件系统和分布式数据库系统
任何强大的单一服务器都满足不了大型网站持续增长的业务需求。数据库经过读写分离后,从一台服务器拆分成两台服务器,但是随着网站业务的发展依然不能满足需求,这时需要使用分布式数据库。
文件系统也一样,需要使用分布式文件系统,如下图所示:
分布式数据库是网站数据库拆分的最后手段,只有在单表数据规模非常庞大的时候才使用。不到不得已时,网站更常用的数据库拆分手段是业务分库,将不同业务的数据部署在不同的物理服务器上。
8.使用 NoSQL 和搜索引擎
随着网站业务越来越复杂,对数据存储和检索的需求也越来越复杂,网站需要采用一些非关系数据库技术如 NoSQL 和非数据库查询技术如搜索引擎。
如下图所示:
NoSQL 和搜索引擎都是源自互联网的技术手段,对可伸缩的分布式特性具有更好的支持。应用服务器则通过一个统一数据访问模块访问各种数据,减轻应用程序管理诸多数据源的麻烦。
9.业务拆分
大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将整个网站业务分成不同的产品线。
如大型购物交易网站都会将首页、商铺、订单、买家、卖家等拆分成不同的产品线,分归不同的业务团队负责。
具体到技术上,也会根据产品线划分,将一个网站拆分成许多不同的应用,每个应用独立部署。应用之间可以通过一个超链接建立关系(在首页上的导航链接每个都指向不同的应用地址),也可以通过消息队列进行数据分发,当然最多的还是通过访问同一个数据存储系统来构成一个关联的完整系统。
10.分布式服务
随着业务拆分越来越小,存储系统越来越庞大,应用系统的整体复杂度呈指数级增加,部署维护越来越困难。
由于所有应用要和所有数据库系统连接,在数万台服务器规模的网站中,这些连接的数目是服务器规模的平方,导致数据库连接资源不足,拒绝服务。
既然每一个应用系统都需要执行许多相同的业务操作,比如用户管理、商品管理等,那么可以将这些共用的业务提取出来,独立部署。由这些可复用的业务连接数据库,提供共用业务服务,而应用系统只需要管理用户界面,通过分布式服务调用共用业务服务完成具体业务操作。
如下图所示:
大型网站的架构演化到这里,基本上大多数的技术问题都得以解决,诸如跨数据中心的实时数据同步和具体网站业务相关的问题也都可以通过组合改进现有技术架构解决。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 3561739510@qq.com 举报,一经查实,本站将立刻删除。
转载请注明来自专注SEO技术,教程,推广 - 8848SEO,本文标题:《网站整体结构规划(网站总体架构设计)》
标签:网站设计
- 上一篇: 如何优化seo搜索引擎(Seo实战密码)
- 下一篇: 影响网站排名的因素(网站排名与流量有关系吗)
- 搜索
- 最新文章
- 热门文章
-
- 小红书标题文案写作技巧有哪些?小红书标题文案写作方法是什么?
- 快手新人开直播十大技巧是什么?快手新人直播技巧有哪些?
- SEO关键词优化如何提高网站排名?SEO关键词排名提升方法是什么?
- 搜索关键词如何让排名靠前?揭秘关键词排名提升方法
- 抖音视频上热门标准是什么?抖音视频上热门条件有哪些?
- 如何进行网站头部标签的优化设置?
- 网站关键词确定方法:精准定位,提高搜索排名
- 抖音标题如何写?抖音标题写作技巧是什么?
- 如何优化网站图片以提升主题相关性(掌握图片优化技巧)
- 网站标题优化技巧:提升搜索排名,吸引更多流量
- 快手点赞对主播有什么好处?快手点赞主播收益是什么?
- 快手播放量1000代表什么?快手播放量1000意义是什么?
- 如何进行网站图片优化(优化网站图片的好处和具体方法)
- 抖音直播带货佣金如何计算?抖音直播带货佣金模式是什么?
- 如何优化网站排名以提升流量?揭秘网站排名提升的五大策略
- 快手直播如何提升人气?快手直播人气提升方法是什么?
- 网站图片优化对排名的影响(如何通过图片优化提高网站排名)
- 如何通过SEO提升网站排名(15个实用技巧让你的网站名列前茅)
- SEO作弊和惩罚分析是什么?SEO作弊惩罚机制是什么?
- 抖音与快手流量对比分析:谁更胜一筹?
- 热门tag