三、大型网站核心架构要素

软件架构,有关软件整体架构与组件的抽象描述,用于指导大型软件系统各个方面的设计。

性能

    在浏览器端通过浏览器缓存,页面压缩,合理布局页面,减少Cookie传输等改善性能。

    CDN、反向代理服务器,缓存热点文件

    应用服务端,本地缓存和分布式缓存(缓存的主从备份,热备份)

    代码层,多线程和改善内存管理

    数据库服务端,索引,缓存,SQL优化

可用性

    网站可用的主要的手段是冗余。多台服务器数据多台互相备份,任何一个宕机都不会影响应用的整体可用。

    对应用服务器,多台服务器通过负载均衡组成一个集群共同对外服务

    对于存储服务器,由于其上存储着数据,需要数据进行实时备份。

    发布验证,自动化测试,自动化发布,灰度发布

伸缩性

    伸缩性是指通过增加服务器,缓解不断上升的用户并发访问和不断增加

    改进缓存路由算法保证缓存数据的可访问性

扩展性

   如何设计网站的架构使用其能快速的响应需求变化

    网站可扩展性架构主要手段:事件驱动架构和分布式服务

安全性

    安全架构是保护网站不受恶意访问和攻击,保护网站的重要数据不被窃取。

小结

    性能,可用性,伸缩性,扩展性和安全性是网站架构最核心的几个要素。

时间: 2024-10-21 09:36:53

三、大型网站核心架构要素的相关文章

大型网站核心架构要素

非业务功能,还要关注性能,可用性,伸缩性,可扩展性,安全性五个要素. 性能 浏览器端可以浏览器缓存,压缩页面(gzip),合理布局页面,减少cookie传输等手段. CDN, 将静态内容分发到网络机房,网站机房部署反向代理缓存热点文件等 应用服务器端,本地缓存,分布式缓存,处理热点数据,更好的性能和减少数据库压力 异步操作,放到消息队列 集群 代码内部多线程 数据库端,索引,缓存,sql优化,nosql数据优化数据模型,存储结构,伸缩性等手段. 指标有 相应时间,TPS, 并发数等 可用性 宕机

大型网站技术架构——核心原理与案例分析(一)

一.大型网站架构模式: 1.分层 - 横向 如应用层.服务层.数据层 2.分割-纵向 将业务化分为不同粒度的细小的功能和服务 如订单业务.购物车业务.短信业务.邮件业务等 3.分布式-将不现的服务.不同的模块部署在不同的服务器,通过远程调用协同工作,分布式静态资源.分布式数据和存储.分布式计算.注意,会对性能有影响(网络请求开销),分布式事物.数据一致性. 4.集群-用更多服务器提供相同的服务,可以提供很好的并发性,不足以支持访问量时,只需要要向集群中加入新的机器即可.当一台机子不可用时,可通过

大型网站系统架构演化之路

大型网站系统架构演化之路 前言 一个成熟的大型网站(如淘宝.天猫.腾讯等)的系统架构并不是一开始设计时就具备完整的高性能.高可用.高伸缩等特性的,它是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式.技术架构.设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线.所以成熟的系统架构是随着业务的扩展而逐步完善的,并不是一蹴而就:不同业务特征的系统,会有各自的侧重点,例如淘宝,要解决海量的商品信息的搜索.下单.支付,例如腾讯,要解决数亿用户的实时消息传

大型网站的实例分析 掌握构建大型网站的架构

本文主要以理论为主,建议您阅读下面的相关阅读,是关于国外大型照片分享网站Flickr的http://www.aliyun.com/zixun/aggregation/11116.html">网站架构方案研究,很实际很有用. 学习和掌握构建大型网站的架构,需要汇总散落的文章,梳理零散的内容.做好这项工作很有意义,但是也比较困难.我们的体会是,不妨抓住以下几个主题,逐个分析大型网站的实例,然后横向比较. 1. Database 数据存储历来是麻烦,尤其是需要存储海量数据的时候,往往单个数据库容

大型网站技术架构(三)--架构核心要素

所谓架构,一种通俗的说法就是"最高层次的规划,难以改变的决定",这些规划和决定奠定了事物未来发展的方向和最终的蓝图. 而软件架构即"有关软件整体结构与组件的抽象描述,用于指导大型软件系统各方面的设计".一般来说软件架构需要关注性能.可用性.伸缩性.扩展性和安全性这5个架构要素. 1.性能 性能是网站架构设计的一个重要方面,任何软件架构设计方案都必须考虑可能带来的性能问题.也正因为性能问题几乎无处不在,所以优化网站性能的手段也非常多: 浏览器端:可以通过浏览器缓存.页

大型网站技术架构——核心原理与案例分析(二)

网站高性能架构 一.性能测试指标  1.1.响应时间 1.2.并发数   指系统能够同时处理请求的数目,反映了系统的负载特性 1.3.吞吐量  TPS(每秒事务数) HPS(每秒HTTP请求数) QPS(每秒查询数)等 1.4.性能计数  包括System Load.对象与线程数.内存使用.CPU使用.磁盘与网络I/O等指标 二.性能测试方法 2.1.性能测试 与初期规划的性能指标为预期目标,不断施加压力,验证是否在可接受范围,性能是否能达到性能预期 2.2.负载测试  不断地增加并发请求以增加

大型网站技术架构:核心原理与案例分析

链接 性能优化 Web前端性能优化 应用服务器性能优化 软件质量保证 代码控制 自动化发布 灰度发布 网站运行监控 伸缩性设计 按功能物理分离 负载均衡 分布式缓存 可扩展设计 利用分布式消息队列降低系统耦合性 利用分布式服务打造可服用的业务平台 1 链接 个人博客: alex-my.xyz CSDN: blog.csdn.net/alex_my 本书作者: 李智慧 2 性能优化 1 Web前端性能优化 浏览器优化访问 减少http请求.主要是合并css,合并js,合并图片.将浏览器一次访问所需

一、大型网站技术架构演化

大型网站系统的特点 1.高并发,大流量 2.高可用:7*24小时不间断服务,不宕机 3.海量数据储存及管理 4.网络复杂 5.安全性 6.易扩展,可伸缩:需求快速变更,发布频繁 7.渐进式发展:脸谱网是宿舍,谷歌是斯坦福大学实验室,淘宝是马云家 一句话,高可用,高性能,易扩展,可伸缩且安全的网站. 大型网站架构演化发展历程 1.初始阶段     单机服务器:应用程序+数据库+文件都在一台服务器上. 2.应用服务和数据服务分离     应用服务器,文件服务器和数据库服务器. 中间通过通信的是:HT

大型网站系统架构的演进(一)(转)

前言 写这篇文章的目的是想用来帮助自己思考和理清头绪,以及如何从一个简单的网站架构演进发展成一个大型网站架构,主要侧重在技术方面  简单的网站 由于我没有做过php,那么就以jsp为例,jsp做网站前端,以电子商务网站为例,描述一个简单的网站架构  前端 jsp+css+js  后端 java ssh  Web容器 tomcat  数据库 mysql  开发人员,美工1个,前端一个,java一个  部署方案为:  一台服务器,部署tomcat和mysql  架构图如下:  应用和数据库分布式部署