《看透Spring MVC》第一章:网站基础知识 总结

《看透Spring MVC》


第一篇:网站基础知识


第一章:网站架构极其演变过程

1.1软件的三大类型

单机类型:不需要连网的单机软件(画图板,五笔打字,记事本,Office,压缩软件)
CS类型:用户安装的软件叫做客户端(Client),统一管理数据的主机中的软件就叫服务端(Server)(已经可以完成网络通信,不过每个客户在使用时都要单独安装客户端软件,而且升级的时候也需要每个用户进行升级)(QQ,大型游戏)
BS类型:为了解决以上问题,设计了统一的客户端,而且默认安装在用户的电脑里,这就是浏览器(一个浏览器可以访问所有同种类型的网站,只是他主要用作数据展示,具体业务逻辑在不同的服务端进行的)


1.2
BS结构网络传输的分解方式:

标准的OIS参考模型:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层
TCP/IP参考模型:应用层,传输层,网络层,物理层


1.3
基础架构中的服务端就像一台主机,随着数据流量的增大,这时候就需要将数据库和应用程序放在不同的主机中了。


1.4海量数据的解决方案

1.4.1缓存和页面静态化
缓存:将从数据库中获取到的数据(也可以是任何序列化的东西)保存起来
通过程序直接保存到内存中:程序直接操作主要使用Map(ConcurrentMap)
    使用缓存框架:常用的缓存框架(Ehcache,Memchche,Redis)

页面静态化:将程序最后生成的页面保存起来,这样不但不需要查询数据库,而且连应用程序处理都省了,所以页面静态化对数据量大和高并发都有好处

1.4.2数据库的优化
表结构优化
SQL语句优化
分区:将一张表中的数据按照一定的规则分到不同的区来保存
分表
索引优化
使用存储过程代替直接操作过程:因为存储过程只要编译一次,而且可以在存储过程中做一些复杂的操作
业务逻辑的优化

1.4.3分离活跃数据
在主要的数据表中保存操作活跃的数据,查询式先从默认的表中查询,如果找不到再从不活跃的数据表中查询

1.4.4批量读取和延迟修改:通过减少操作次数来提高效率
批量读取:讲多次查询合并到一次进行
延迟修改(延迟加载):主要针对高并服务器发而且频繁修改(包括新增)的数据,这时候可以将需要修改的数据暂时保存在缓存中,然后定时将缓存中的数据保存到数据库中,程序在读取数据时可以同时读取数据库中和缓存中的数据。(这里的缓存过程,数据库中的数据不一定是完整的,而正常的缓存过程数据库中的数据一定是完整的)


1.4.5读写分离:对数据库进行集群,这样可以再高并发的情况下将数据库的操作分配到多个数据拂去其去处理从而降低单台服务器的压力,但是的保持每台服务器保存的数据一致,所以数据同步成了集群的核心问题。
将写操作分配给专门的一台服务器(主服务器),主服务器写完数据后,从服务器再从主服务器读取数据

1.4.6分布式数据库:讲不同的表放在不同的数据库中然后再放到不同的服务器
数据库集群(读写分离)的作用是将多个请求分配到不同的服务器处理从而减轻单台服务器的压力,而分布式数据库是解决单个请求本身就非常复杂的问题,他可以将单个请求分配到多个服务器处理,使用分布式后的每个节点还可以同时使用读写分离,从而组成多个节点群

1.4.7NoSQL和Hadoop
NoSQL的核心是非结构化:灵活处理速度快
Hadoop是专门针对大数据处理的一套框架


1.5高并发的解决方案

1.5.1应用和静态资源分离
将静态资源(图片,视频,js,css和一些资源文件)拿出来单独放在一个服务器去

1.5.2页面缓存
将生成的页面缓存起来,就不用每次重新生成页面,可以节省大量的CPU资源

1.5.3集群与分布式
集群:每台服务器具有相同的功能,处理请求时调用哪台服务器都可以,起到分流的作用
分布式:将不同的业务放在不同的服务器中,处理一个请求可能需要多个服务器

1.5.4反向代理
代理服务器:代替我们获取资源然后将结果返回给我们,不过是我们主要要求他为我们服务,即主动发出请求,他不需要有自己的域名
反向代理服务器:我们正常访问一台服务器的时候,该服务器自己调用别的服务器的资源并将结果返回给我们,我们自己并不知道,他需要有自己的域名

1.5.5CDN
CDN是一种特殊的集群页面缓存服务器,分布在全国各地,当接收到用户的请求后会将请求分配到最合适的CDN服务器节点获取数据。CDN每个节点其实就是一个页面缓存器,如果没有请求资源的缓存就会从主服务器获取,否则返回缓存的页面。

1.6底层的优化:协议的使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值