大型网站架构模式

分层
分层是大型网站架构模式应用系统中最常见的一种架构模式 系统分几个部分,每个部分负责一部分相对比较单一的职责,然后通过上层对下层的依赖和调用组成一个完整的系统,在开发过程中,必须合理规划层次边界和接口,严格遵循分层架构的约束,禁止跨层次的调用

分割
网站越大功能越复杂 服务和数据库处理的业务越来越多 将不同的功能和服务分割开来


分布式对于大型网站分成和分割的一个主要目的是:为了切分后的模块便于分布式部署,即将不同模块部署在不同的服务器上通过远程调用协同工作,分布式意味着可以使用更多计算机完成同样的功能,计算机一多cpu 内存 存储资源,也就越多,能够处理的并发访问和数据量就越大,进而能够为更多的用户提供服务,同时意味着服务调用必须通过网络,对性能造成严重的影响,服务器越多造成服务器死机的概率也就越大 网站可用性强不大 数据不一致,开发管理维护困难,常用分布式方案有以下几种

  分布式应用和服务:将分成和分割后的应用和服务模块分布式部署,除了可以改善网站性能和并发性,加快开发和发布速度,减少数据库连接资源耗外,还可以使用不同应用复用共同的服务,便于业务功能拓展
分布式静态资源:网站的静态资源入js css logo 图片等资源独立分布式部署,并采用独立的域名,分布式部署,可以减轻应用服务器的负载压力,通过使用独立域名加快浏览器并发加载的速度
 分布式数据和存储:处理一p为单位的海量数据,单台计算机无法提供如此大的存储空间,这些数据需要分布式存储 为网站而生的NOSQL产品 几乎都是分布式的


异步
业务之间的消息传递不是同步调用,而是将一个业务操作分为多个阶段,每个阶段之间通过共享数据的方式,异步执行进行协作 单一的服务器内部可以通过多线程共享内存队列的方式实现异步,多个服务器群集通过分布式消息队列实现异步  可以提高系统可用性  加快网站响应 消除并发访问高峰
冗余
网站需要7*24小时可用 为了避免某台服务器死机 不丢失数据  需要在访问和负载很小的服务器上面布置两台以上的服务器构成一个群集 实现数据冗余备份
自动化
发布对网站是头等大事 使用发布过程自动化可以有效减少故障 自动化代码管理 自动化测试 自动化安全检测 自动化部署 自动化监控 自动化报警 自动化失效转移 自动化失效恢复 自动化降级 自动化分配资源


使用应用服务器集群改善网站的并发处理能力
使用集群式网站解决高并发含量数据问题的常用手段,当一台服务器的处理能力存储空间不足时,不要企图去换更强大的服务器 对于大型网站而言不管多么强大的服务器都满足不了网站持续增长的业务需求,这种情况下更恰当的做法是加一台服务器分担原有服务器的访问及存储能力,对于网站架构而言只要能通过增加一台服务器的方式改善负载压力就可以以同样的方式持续增加服务去不断改善系统性能从而实现系统的可伸缩性


数据库读写分离

主从热备功能 通过使用两台数据库的主从关系 将一台数据库服务器的数据同步更新到另一台服务器上 改善数据库的负载压力

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值