二:网站的架构模式

模式最重要的是能够重用css

为了解决高并发,海量数据,高可用提出了不少解决方案实现高可用,高性能,易扩展,可伸缩,安全的架构前端

分层:sql

    程序上分层,并且也分层不是数据库

分割:缓存

    纵向节分,按功能和服务包装秤高耦合低内聚的模块单元,这样一方面有利于开发维护,并且还有利于提供并发能力安全

    好比网站能够分为购物,论坛,搜过,广告,再细致一点可能就是小家电,你们电,机票,酒店,日化等等服务器

分布式:网络

    分层和分割一个重要做用就是分布式,经过远程调用,提升系统处理能力架构

    可是随之带来了网络耗损,系统一致性,更大的宕机风险。并发

    常见的解决方案有:

        分布式应用服务:改善并发性,减小数据库链接资源,还能够更好的服用服务,有利于后续扩展

        分布式静态资源:使用独立域名,减小服务器压力

        分布式数据存储:如今数据量太大,主要是nosql

        分布式细算:如今有hadoop,通常作数据分析,还有基于流计算的storm,主要用于实时计算

        分布式锁:主要用于分布式环境下的协同操做,如今主要是zk提供的分布式锁功能比较好

        分布式文件系统:通常用做云存储

集群:

    对外提供一个接口,使用负载均衡,同时避免了单点故障

缓存:

    将数据存放到离计算最近的位置加快速度

    CDN:内容分发网络,放在网络运营商那里,存放一些静态资源,好比js,css
    反向代理:网站前端,也能够存放一些静态资源

    本地缓存:存储热点数据

    分布式缓存:热点数据存储在分布式缓存中,减小应用和数据库的压力

异步:

    下降了系统的耦合性,将业务拆分为多个阶段,单机状况下可使用共享数据的方式,分布式环境下可使用消费通讯,典型的消费者生产者模式

    此外还有如下特征:

    提供系统可用性,消费者故障了,消息就会存储起来,系统总体表现无恙,生产者恢复了从新消费

    加快了相应速度

    消除业务的高峰期,无论并发有多大,后台消费者仍是有序的处理

相关文章
相关标签/搜索