400-915-1135
大型网站架构概览(网站架构图怎么做)网站建设架构图,

大型网站架构概览(网站架构图怎么做)网站建设架构图,

发表日期:2023-11-13 14:18:10   作者来源:众诚企业建站   浏览:195

网站架构包括:前端架构+应用层架构+服务层架构+存储层架构+后台架构+数据中心机房架构+安全架构+数据采集与监控。

前端架构

浏览器优化技术 并不是优化浏览器,而是通过优化响应页面,加快浏览器页面的加载和显示,常用的有页面缓存、合并HTTP 减少请求次数、使用页面压缩等。CDN 内容分发网络,部署在网络运营商机房,通过将静态页面内容分发到离用户最近的CDN 服务器,使用户可以通过最短路径获取内容。动静分离,静态资源独立部署 静态资源,如JS,CSS 等文件部署在专门的服务器集群上,和Web 应用动态内容服务分离,并使用专门的(二级)域名。图片服务 图片不是指网站Logo 按钮图标等,这些文件属于上面提到的静态资源,应该和JS CSS 部署在一起。这里的图片指用户上传的图片,如产品图片、用户头像等,图片服务同样使用独立部署的图片服务器集群,并使用独立(二级)域名。反向代理 部署在网站机房,在应用服务器、静态资源服务器、图片服务器之前,提供页面缓存服务。DNS 域名服务,将域名解析成IP 地址,利用DNS 可以实现DNS 负载均衡,配置CDN也需要修改DNS使域名解析后指向CDN 服务器。

应用层架构

应用层是处理网站主要业务逻辑的地方。

开发框架页面渲染 将分别开发维护的动态内容和静态页面模板集成起来,组合成最终显示给用户的完整页面。负载均衡 将多台应用服务器组成一个集群,通过负载均衡技术将用户请求分发到不同的服务器上,以应对大量用户同时访问时产生的高并发负载压力。Session 管理 为了实现高可用的应用服务器集群,应用服务器通常设计为无状态,不保存用户请求上下文信息,但是网站业务通常需要保持用户会话信息,需要专门的.机制管理Session 使集群内甚至跨集群的应用服务器可以共享Session动态页面静态化 对于访问量特别大而更新又不很频繁的动态页面,可以将其静态化,即生成一个静态页面,利用静态页面的优化手段加速用户访问,如反向代理、CDN、 浏览器缓存等。业务拆分 将复杂而又庞大的业务拆分开来,形成多个规模较小的产品,独立开发、部署、维护,除了降低系统耦合度,也便于数据库业务分库。按业务对关系数据库进行拆分,技术难度相对较小,而效果又相对较好。虚拟化服务器 将一台物理服务器虚拟化成多台虚拟服务器,对于并发访问较低的业务,更容易用较少的资源构建高可用的应用服务器集群。

服务层架构

提供基础服务,供应用层调用,完成网站业务。

分布式消息 利用消息队列机制,实现业务和业务、业务和服务之间的异步消息发送及低耦合的业务关系。分布式服务 提供高性能、低耦合、易复用、易管理的分布式服务,在网站实现面向服务架构SOA分布式缓存 通过可伸缩的服务器集群提供大规模热点数据的缓存服务,是网站性能优化的重要手段。分布式配置 系统运行需要配置许多参数,如果这些参数需要修改,比如分布式缓存集群加入新的缓存服务器,需要修改应用程序客户端的缓存服务器列表配置,并重启应用程序服务器。分布式配置在系统运行期提供配置动态推送服务,将配置修改实时推送到应用系统,无需重启服务器。

存储层架构

分布式文件 网站在线业务需要存储的文件大部分都是图片、网页、视频等比较小的文件,但是这些文件的数量非常庞大,而且通常都在持续增加,需要伸缩性设计比较好的分布式文件系统。关系数据库 大部分网站的主要业务是基于关系数据库开发的,但是关系数据库对集群伸缩性的支持比较差。通过在应用程序的数据访问层增加数据库访问路由功能,根据业务配置将数据库访问路由到不同的物理数据库上,可实现关系数据库的分布式访问NoSQL 数据库 目前各种NoSQL 数据库层出不穷,在内存管理、数据模型、集群分布式管理等方面各有优势,不过从社区活跃性角度看,HBase 无疑是目前最好的。数据同步 在支持全球范围内数据共享的分布式数据库技术成熟之前,拥有多个数据中心的网站必须在多个数据中心之间进行数据同步,以保证每个数据中心都拥有完整的数据。在实践中,为了减轻数据库压力,将数据库的事务日志(或者NoSQL 的写操作Log) 同步到其他数据中心,根据Log 进行数据重演,实现数据同步。

后台架构

网站应用中,除了要处理用户的实时访问请求外,还有一些后台非实时数据分析要处理。

搜索引擎 即使是网站内部的搜索引擎,也需要进行数据增量更新及全量更新、构建索引等。 这些操作通过后台系统定时执行。数据仓库 根据离线数据,提供数据分析与数据挖掘服务。推荐系统 社交网站及购物网站通过挖掘人和人之间的关系,人和商品之间的关系,发掘潜在的人际关系和购物兴趣,为用户提供个性化推荐服务。

数据采集与监控

监控网站访问情况与系统运行情况,为网站运营决策和运维管理提供支持保障。

浏览器数据采集 通过在网站页面中嵌入JS 脚本釆集用户浏览器环境与操作记录,分析用户行为。服务器业务数据采集 服务器业务数据包括两种,一种是采集在服务器端记录的用户请求操作日志;一种是釆集应用程序运行期业务数据,比如待处理消息数目等。服务器性能数据采集 采集服务器性能数据,如系统负载、内存使用率、网卡流量等。系统监控 将前述采集的数据以图表的方式展示,以便运营和运维人员监控网站运行状况,做 到这一步仅仅是系统监视。更先进的做法是根据釆集的数据进行自动化运维,自动处理 系统异常状况,实现自动化控制。系统报警 如果采集来的数据超过预设的正常情况的阈值,比如系统负载过高,就通过邮件、 短信、语音电话等方式发出报警信号,等待工程师干预。

安全架构

保护网站免遭攻击及敏感信息泄露。

Web 攻击 以HTTP 请求的方式发起的攻击,危害最大的就是XSS 和SQL 注入攻击。但是只要 措施得当,这两种攻击都是比较容易防范的。数据保护 敏感信息加密传输与存储,保护网站和用户资产。

数据中心机房架构