网站架构几大关键要素

什么叫架构(这里指的是软件架构)?sql

有关软件总体结构与组件的抽象描述,用于指导大型软件系统各方面的设计。
数据库

下面就是软件架构的几大关注要素:
浏览器

1,系统功能需求缓存

固然是重点处理对象,有功能需求才会有项目,也才用架构;安全

2,性能
服务器

一个网站的性能,或者说是响应速度会严重影响用户体验。据最新研究代表,大多数用户指望的网站加载时间是3秒,若是时间长过3秒,网站就开始流失用户;固然,随着如今的网速每一年成指数级的增涨,3秒这个指望值可能再也不受用。多线程

衡量性能的重要指标:响应时间 ,TPS,系统性能计数器架构

其中能够优化的,异步

浏览器端:包括浏览器缓存,使用页面压缩,合理布局页面,减小Cookie传输,页面静态化,CDN,反向代理;nosql

应用服务器端:本地缓存,分布式缓存,集群,异步消息队列

代码:多线程,JVM调优;

数据库端:index,cache,sql,nosql;

3,可用性

高可用设计的前提就是必然会出现服务器宕机,目标就是宕机后服务仍然可用。

主要手段:冗余

4,伸缩性

指标:是否能够用多台服务器构建集群,并向集群中添加新的服务器。

包括:应用服务器集群,缓存集群,数据库。

5,扩展性

指标:在网站增长新业务时,是否能够实现对如今产品透明无影响。不须要任何改动或者不多改动如今业务就能够上线新的业务。

主要手段是:事件驱动架构(使用消息队列),分布式服务(RPC)。

6,安全性

相关文章
相关标签/搜索