专栏首页前端导学大型网站技术架构 读书笔记

大型网站技术架构 读书笔记

1 大型网站架构演化

1.1 大型网站软件系统的特点

高并发,大流浪

高可用

海量数据

用户分布广泛,网络情况复杂

安全环境恶劣

需求快速变化,发布频繁

渐进式发展

1.2 大型网站架构演化发展经历

1.2.1 初始阶段的网站架构

应用程序,数据库,文件等所有的资源都在一台服务器上。

1.2.2 应用服务器和数据服务器分离

应用和数据分离后整个网站使用三台服务器:应用服务器(更快更大的CPU),文件服务器(更大的硬盘)和数据库服务器(更快的硬盘和更大的内存)。

1.2.3 使用缓存改善网站性能

网站使用的缓存可以分为两种:缓存在应用服务器上的本地缓存和缓存在专门的分布式缓存服务器上的远程缓存。

本地缓存访问速度更快,但内存有限,缓存数据量有限。

远程分布式缓存可以使用集群的方式,部署大内存的服务器作为专门的缓存服务器,可以在理论上做到不受内存容量限制的缓存服务。

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

对网站架构而言,只要能通过增加一台服务器的方式改善负载压力,就可以以同样的方式持续增加服务器不断改善系统性能,从而实现系统的可伸缩性。

应用服务器实现集群式网站可伸缩集群架构设计中较为简单成熟的一种。

通过负载均衡调度服务器,可将来自用户浏览器的访问请求分发到应用服务器集群中的任何一台服务器上。

1.2.5 数据库读写分离

缓存不命中,缓存过期和全部的写操作需要访问数据库。

大部分主流数据库都提供主从热备功能,通过配置两台数据库主(写)从(读)关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。

主数据(写)库将数据同步到从数据库(读)

1.2.6 使用反向代理和CDN加速网站响应

CDN和反向代理的基本原理都是缓存,区别在于CDN部署在网络提供商的机房,使用户在请求网站服务时,可以从距离自己最近的网络提供商机房获取数据;而反向代理则部署在网站的中心机房,当用户请求到达中心机房后,首先访问的服务器是反向代理服务器,如果反向代理服务器中缓存着用户请求的资源,就将其直接返回给用户。

一方面加快用户访问速度,一方面减轻后端服务器的负载压力。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 数据库怎么分库分表,垂直?水平?

    不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少...

    Java技术栈
  • mysql常用配置注意项与sql优化

    肖哥哥
  • Python数据库测试实战教程

    我们在细化成具体的就是,我们需要验证表结构、字段、长度、主键、索引、unique等等属性。

    苦叶子
  • 少年,了解lsof 命令吗?

    本文深入的学习命令lsof--列出打开文件(lists openfiles)。在linux系统中,我们可以通过文件访问文本数据,还可以访问网络连接和硬件。我们通...

    用户1278550
  • Spring Boot(六):如何优雅的使用 Mybatis

    这两天启动了一个新项目因为项目组成员一直都使用的是 Mybatis,虽然个人比较喜欢 Jpa 这种极简的模式,但是为了项目保持统一性技术选型还是定了 Mybat...

    纯洁的微笑
  • BAT 必问的 MySQL 面试题你都会吗?

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xmt1139057136/article/detai...

    业余草
  • PHP备战面试知识参考(备忘)

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/details/...

    用户3056046
  • 分布式架构中数据一致性常见的几个问题

    针对分布式架构下的数据一致性,大家也许会问这样的问题:跨系统间分布式事务如何解决?系统内多个服务的分布式事务如何解决?一个服务内多个数据源/数据库的分布式事务如...

    yuanyi928
  • 十步搞定单因素方差分析

    可以得出结论,我们感兴趣的基因(这里是CUL5)在乳腺癌的正常组织及癌症组织(原位和转移)表达量,使用单因素方差分析,得到了统计学显著的结果。

    生信技能树
  • 玩转MySQL优化命令

    grant all privileges on *.* to 授予外网登陆的用户名@'%' identified by '密码' WITH GRANT OPTI...

    試毅-思伟

扫码关注云+社区

领取腾讯云代金券