首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大型网站技术架构(二)--大型网站架构演化

何谓大型网站 大型网站系统特点: ps:符合这些要求的所谓大型网站真的很少,可遇而不可求也。...说到大型网站,就要先理一下大型网站的特点:高并发,大流量,高可用,海量数据等,本文根据《大型网站技术架构》一书整理如下: 初始阶段的网站架构 初始阶段都比较简单,通常一台服务器就可以搞定一个网站了,ssm-demo...应用服务和数据服务分离 随着网站业务的发展,一台服务器逐渐不能满足需求,这时候就需要将应用和数据分离: 使用缓存改善网站性能 现在的80%的业务访问都会集中在20%的数据上,网站基本上都会使用缓存,...使用反向代理和CDN加上网站相应 提高网站的访问速度,主要手段有使用CDN和反向代理。...业务拆分 大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将真个网站业务拆分成不同的产品线。 具体到技术上,也会根据产品线话费,将一个网站拆分成许多不同的应用,每个应用独立部署维护。

2K60
您找到你想要的搜索结果了吗?
是的
没有找到

大型网站架构系列:电商网站架构案例

大型网站架构是一个系列文档,欢迎大家关注。本次分享主题:电商网站架构案例。从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。...除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。 根据实际需要,进行改造,扩展,支持千万PV,是没问题的。...本次分享大纲 电商案例的原因 电商网站需求 网站初级架构 系统容量估算 网站架构分析 网站架构优化 架构总结 电商网站案例,一共有三篇本篇主要说明网站的需求,网站初始架构,系统容量估算方法。...三、网站初级架构 一般网站,刚开始的做法,是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件系统。 这是前几年比较传统的做法,之前见到一个网站10万多会员,垂直服装设计门户,N多图片。...但是,目前主流的网站架构已经发生了翻天覆地的变化。一般都会采用集群的方式,进行高可用设计。至少是下面这个样子。 ?

5.2K70

大型网站架构系列:电商网站架构案例(2)

电网网站架构案例系列的第二篇文章。主要讲解网站架构分析,网站架构优化,业务拆分,应用集群架构,多级缓存,分布式Session。...五、网站架构分析 根据以上预估,有几个问题: 网上电子商城系统需要部署大量的服务器,高峰期计算,可能要部署30台Web服务器。并且这三十台服务器,只有秒杀,活动时才会用到,存在大量的浪费。...网上商城系统网站一般需要做以下架构优化(优化是架构设计时,就要考虑的,一般从架构/代码级别解决,调优主要是简单参数的调整,比如JVM调优;如果调优涉及大量代码改造,就不是调优了,属于重构): 业务拆分应用集群部署...(分布式部署,集群部署和负载均衡)多级缓存单点登录(分布式Session)数据库集群(读写分离,分库分表)服务化消息队列其他技术 六、网站架构优化6.1业务拆分 根据业务属性进行垂直切分,划分为产品子系统...电商网站一般采用分布式Session实现。 再进一步可以根据分布式Session,建立完善的单点登录或账户管理系统。

1.7K40

大型网站架构系列:电商网站架构案例(3)

本文章是电商网站架构案例的第三篇,主要介绍数据库集群,读写分离,分库分表,服务化,消息队列的使用,以及本电商案例的架构总结。...一般独立商城网站建设有两种方式读写分离和分库分表。 读写分离:一般解决读比例远大于写比例的场景,可采用一主一备,一主多备或多主多备方式。 本案例在业务拆分的基础上,结合分库分表和读写分离。...七、架构总结 以上是本次分享的架构总结,其中细节可参考前面分享的内容。其中还有很多可以优化和细化的地方,因为是案例分享,主要针对重要部分做了介绍,工作中需要大家根据具体的业务场景进行架构设计。...以上是电商网站架构案例的分享一共有三篇,从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。...除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。

1.5K40

大型网站架构系列:电商网站架构案例(1)

大型网站架构是一个系列文档,欢迎大家关注。本次分享主题:电商网站架构案例。从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。...网上电子商城系统除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。...本次分享大纲 1、电商案例的原因; 2、电商网站需求; 3、网站初级架构; 4、系统容量估算; 5、网站架构分析; 6、网站架构优化; 7、架构总结; 电商网站案例,一共有三篇本篇主要说明网站的需求,网站初始架构...三、网站初级架构 一般网站,刚开始的做法,是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件系统。 这是前几年比较传统的做法,之前见到一个网站10万多会员,垂直服装设计门户,N多图片。...如下图: 但是,目前主流的网站架构已经发生了翻天覆地的变化。一般都会采用集群的方式,进行高可用设计。至少是下面这个样子。

2.3K40

大型网站技术架构网站的高可用架构(三)

今天这篇文章,主要围绕着如何从多个方面来进行“高可用的网站架构”展开,网站页面能够完整呈现在最终用户面前,需要经过很多个环节,任何一个环节除了问题,都可能导致网站页面不可访问。...一般为了将网站的可用性指标转换成对应的责任度量下放到个人或者组织,我们一般使用“故障分”来对网站的单位时间故障进行加权计算,进而将责任分担下放到个人,加入其年度的绩效考核中。...二、高可用的整体架构 我们一般将网站架构分为三层:应用层、服务层、数据层,应用层负责业务逻辑处理,服务层提供可复用的服务,数据层负责数据的封装与存储,各层之间相对独立。...由于网站架构资源中,硬件故障是最常见的问题。那么高可用架构的主要目的就是保证服务器在硬件故障时依然可用。主要手段是数据和服务的冗余备份以及失效转移。 ?...相关阅读: 大型网站技术架构,初入探秘(一) 大型网站技术架构网站的高性能架构(二)

1K30

大型网站技术架构网站的高性能架构(二)

今天这篇文章,主要围绕着如何从多个方面来进行“高性能网站架构”展开,性能优化小到一行代码的重构,大到服务器集群的重新架构。怎样通过各项数据指标来监控网站的实时性能?...找出网站的性能“弱点”,并以此为目标进行迭代式的优化,才能逐渐将网站架构达到一个高性能的水平。 ? 一、网站性能测试 网站的性能指标,既可以是开发人员客观的性能分析数据,测试指标。...一般而言,我们用如下指一些标来衡定一个网站的性能水平:响应时间、并发数量、吞吐量、性能计数器。...三、应用服务器优化 应用服务器主要用来处理系统业务,是整个网站架构中的核心,也是最复杂变化最多的部分。常用的优化手段有:使用分布式缓存(网站优化第一定律:优先考虑使用缓存。...但对于大量数据的存储需求,基于 MapReduce 可以进行并发任务处理的 HDFS 可能更加合适) 明天继续说,大型网站技术架构网站的高可用架构(三) 相关文章 【必知】大型网站技术架构,初入探秘(

85330

大型网站技术架构

网站都是从小网站一步一步发展为大型网站的,而这之中的挑战主要来自于庞大的用户、安全环境恶劣、高并发的访问和海量的数据,任何简单的业务处理,一旦需要处理数以 P 计的数据和面对数以亿计的用户时,问题就会变的很棘手...下面我们就来说说这个演变过程: 初始阶段 大型网站都是由小型网站演变而来的,网站架构也一样 小型网站最开始没有太多人访问,只需要一台服务器就绰绰有余,就像这样: ?...小型网站架构 应用程序、数据库、文件等所有资源都在一台服务器上,通常使用 Linux PHP MySQL Apache 就可以完成整个项目部署,然后再买个域名,租一个廉价的服务器就可以开始我们的网站之旅了...,但随着用户的继续增加,我们需要对网站架构进一步优化 使用缓存改善性能 网站的访问一样遵循二八定律:80% 的业务访问集中在 20% 的数据上面 因此我们要对这一小部分的数据进行缓存来减轻数据库的访问压力...对于大型网站而言,无论多么强大的服务器,都满足不了持续增长的业务需求,更高效的方式就是增加服务器来分担压力 对于网站架构而言,如果增添一台新的服务器可以改善负载压力,那么就可以使用同样的方式来应对源源不断的业务需求

1.8K80

大型网站技术架构

缩短业务流程,加快网站访问速度 消除并发访问高峰 架构五要素: 高性能 可用性(Availability) 伸缩性(Scalability) 扩展性(Extensibility) 安全性 1、高性能 性能的测试指标主要有...: 响应时间:指应用执行一个操作需要的时间 并发数:指系统能够同时处理请求的数目 QPS:指单位时间内系统处理的请求量 系统性能计数器:描述服务器或者操作系统性能的一些数据指标 性能优化,根据网站分层架构...HDFS 2、高可用 高可用的网站架构:目的是保证服务器硬件故障时服务依然可用、数据依然保存并能够被访问,主要手段数据和服务的冗余备份及失效转移 高可用的应用:显著特点是应用的无状态性 通过负载均衡进行无状态服务的失效转移...“开闭原则”,构建可扩展的网站架构 利用分布式消息队列降低耦合性 分布式消息队列 事件驱动架构(Event Driven Architecture) 利用分布式服务打造可复用的业务平台 分布式服务框架设计...(Thrift,Dubbo) 可扩展的数据结构(如 HBase的 ColumnFamily 设计) 利用开放平台建设网站生态圈 5、网站的安全架构 XSS 攻击和 SQL 注入攻击是构成网站应用攻击最主要的两种手段

1.2K30

漫谈大型网站架构

作者介绍:陈康贤(花名龙隆),淘宝技术部技术专家,著有《大型分布式网站架构设计与实践》一书,在分布式系统架构设计、高并发系统设计、系统稳定性保障等领域积累了较为丰富的实践经验,对新技术有浓厚的兴趣 。...大型网站架构从来都不是一个预先定义的架构,而是一个演进式的架构。...很少有一个网站从建站开始,就能够因具备大型网站的所有属性而一成不变的,从最简单的LAMP架构,再到基于IOE的大型集中式应用架构,再演变成时下的分布式应用架构,随着网站用户规模的扩大,架构也在不断演进。...当前支撑大型网站的几大核心技术,分布式、服务化、虚拟化,其中分布式解决的是规模化带来的问题,所谓的规模化即包括数据规模越来越大,访问量越来越高,也包括开发团队规模越来越大,工程代码规模越来越大。...架构设计的几个层次,没有架构也是架构,专注于解决现有问题也能称为架构,而好的架构应该是即能够约束开发者又能够解放开发者使其专注于功能的设计。

96320

说说 JavaEye 网站架构

偶然看到了 Robbin 的一则胶片 《JavaEye 网站架构解密》,说到了一些 JavaEye 的一些实现,那就来看看有哪些有意思的东西。...—————————————————————————————————————- JavaEye 网站架构进化: (1)2006 年 9 月 • lighttpd • ruby 1.8.4, rails...cache_money: • 出自 twitter 开发团队之手 • 可能是目前最强大的 ruby cache 框架 • 支持分页查询缓存,支持条件查询缓存 全文检索: ———————————...自己也提到了一些客观原因: JavaEye 在 04 年 05 年确实有一些比较火爆的帖子,但是要看到当时的时代背景:EJB2 逐渐被人唾弃,Hibernate/Spring 强势崛起,CMM 开始被骂,敏捷开发在国内悄悄普及...从整个 Java 行业来说,那几年可以炒作的体裁很多,可以争论的话题很多,观点的冲突很多。这在客观上造就了论坛的火爆。

66710

大型网站架构总结

一、大型网站的特点 用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变更快,频繁发布 从小到大,渐进发展 以用户为中心 免费服务,付费体验 二、大型网站架构目标...三、大型网站架构模式 ? 分层:一般可分为,应用层,服务层,数据层,管理层,分析层; 分割:一般按照业务/模块/功能特点进行划分,比如应用层分为首页,用户中心。...),NOSQL等; 五、高可用架构 大型网站应该在任何时候都可以正常访问。...应用系统安全:在程序开发时,对已知常用问题,使用正确的方式,在代码层面解决掉。防止跨站脚本攻击(XSS),注入攻击,跨站请求伪造(CSRF),错误信息,HTML注释,文件上传,路径遍历等。...九、敏捷性 网站架构设计,运维管理要适应变化,提供高伸缩性,高扩展性。方便的应对快速的业务发展,突增高流量访问等要求。 除上面介绍的架构要素外,还需要引入敏捷管理,敏捷开发的思想。

1.5K60

漫谈大型网站架构

作者介绍:陈康贤(花名龙隆),淘宝技术部技术专家,著有《大型分布式网站架构设计与实践》一书,在分布式系统架构设计、高并发系统设计、系统稳定性保障等领域积累了较为丰富的实践经验,对新技术有浓厚的兴趣 。...大型网站架构从来都不是一个预先定义的架构,而是一个演进式的架构。...很少有一个网站从建站开始,就能够因具备大型网站的所有属性而一成不变的,从最简单的LAMP架构,再到基于IOE的大型集中式应用架构,再演变成时下的分布式应用架构,随着网站用户规模的扩大,架构也在不断演进。...当前支撑大型网站的几大核心技术,分布式、服务化、虚拟化,其中分布式解决的是规模化带来的问题,所谓的规模化即包括数据规模越来越大,访问量越来越高,也包括开发团队规模越来越大,工程代码规模越来越大。...架构设计的几个层次,没有架构也是架构,专注于解决现有问题也能称为架构,而好的架构应该是即能够约束开发者又能够解放开发者使其专注于功能的设计。

79510

大型网站架构演变

什么是大型网站? 有时候要下个定义挺难的,那么就从具体来说吧。博主曾经在京东工作过,大家都知道京东是个大型网站,这点应该没有异议。那它有哪些特点呢?...在早期,比如传统的Java Web开发,使用MVC模式,通过把应用打成一个war包部署到服务器上,注意到这样的网站早期是没有多少流量的,一般文件服务器和数据库服务器也在应用服务器上,即是一个单体应用。...不是的,大型网站随着业务越来越多,越来越复杂,数据量也很大,如果采用上面的架构,显然一旦db扛不住了,那就over了。于是,又需要对db进行分库分表操作了。 ?...到这里,其实我们的网站,就处于一个微服务的阶段了。由于用户的一些请求,需要到达多个业务系统来完成,所以这里又出现分布式事务的问题。...在演变的过程中,除了架构的调整,我们还可能涉及到一些调优,比如JVM/db调优等。 小结 到这里,我们可以看到大型网站,并非一蹴而就,而是逐步演变、迭代升级的。朋友们,下篇见

97840

大型网站技术架构

缩短业务流程,加快网站访问速度 消除并发访问高峰 架构五要素: 高性能 可用性(Availability) 伸缩性(Scalability) 扩展性(Extensibility) 安全性 1、高性能 性能的测试指标主要有...: 响应时间:指应用执行一个操作需要的时间 并发数:指系统能够同时处理请求的数目 QPS:指单位时间内系统处理的请求量 系统性能计数器:描述服务器或者操作系统性能的一些数据指标 性能优化,根据网站分层架构...HDFS 2、高可用 高可用的网站架构:目的是保证服务器硬件故障时服务依然可用、数据依然保存并能够被访问,主要手段数据和服务的冗余备份及失效转移 高可用的应用:显著特点是应用的无状态性 通过负载均衡进行无状态服务的失效转移...“开闭原则”,构建可扩展的网站架构 利用分布式消息队列降低耦合性 分布式消息队列 事件驱动架构(Event Driven Architecture) 利用分布式服务打造可复用的业务平台 分布式服务框架设计...(Thrift,Dubbo) 可扩展的数据结构(如 HBase的 ColumnFamily 设计) 利用开放平台建设网站生态圈 5、网站的安全架构 XSS 攻击和 SQL 注入攻击是构成网站应用攻击最主要的两种手段

1.5K60

大型网站架构演化

由于网络的问题,这两天我会发一下架构方面的知识,谢谢大家的支持。 说道网站,就的先说网站的特点:高并发,大流量,高可用,海量数据等。下面就说说网站架构演化过程吧。...1、初始阶段的网站架构 初始阶段都比较简单,通常一台服务器就可以搞定一个网站了,看图。 ?...3、使用缓存改善网站性能 毫无疑问,现在的网站基本上都会使用缓存,即:80%的业务访问都会集中在20%的数据上。 ?...4、使用应用服务器集群改善网站的并发处理能力 因为单一应用服务器能够处理的请求连接有限,在网站访问高峰时期,应用服务器会成为整个网站的瓶颈。因此使用负载均衡处理器势在必然。...网站利用数据库这一功能实现数据库读写分离,从而改善数据库负载压力。 ? 6、使用反向代理和CDN加上网站相应 提高网站的访问速度,主要手段有使用CDN和反向代理。

1K10

大型网站架构演化

本文为《大型网站技术架构 核心原理与案例分析》读书笔记 大型网站架构演化 1 大型网站软件的特点 1.1 高并发,大流量 1.2 海量数据 存储及管理海量数据,需要大量服务器 1.3 高可用: 7...* 24 小时服务 1.4 用户分布广泛,网络环境复杂 1.5 安全环境恶劣 大型网站几乎每天都被黑客攻击 1.6 需求快速变更,发布频繁 1.7 渐进式发展 2 大型网站架构演化过程 2.1 单台服务器...因而,需要更大的硬盘 ④ 优点 提上各个服务器并发访问能力,改善存储空间 ⑤ 挑战 数据库访问压力增大,导致访问延迟 2.3 数据缓存 启用数据缓存的目的是,改善网站性能 网站访问遵循二八原则:80%...2.4 应用服务器集群 ① 集群的优势 集群的应用,旨在改善网站并发高的问题,能有效改善网站的并发处理能力。...3 扩展阅读 mysql 主从复制原理 反向代理服务器的工作原理 说说分布式文件存储系统-基本架构 浅谈分布式数据库该如何学习和实践 上篇 HBase全网学习资料汇总

91110
领券