读书笔记(二)-- 《大型网站技术架构:核心原理与案例分析》

注:作为一个搞IT的技术人员,技术书籍是不可缺少的,《大型网站技术架构:核心原理与案例分析》这本书是app后台开发群的群主推荐的书籍,书中提到的技术架构方法,不仅仅适用于网站,其他方面的开发都可以借鉴其中的思想,是不可多得的一本好书。由于本书是找一位同事借的,周末就需要读完还给他,再次验证一个道理,书还是借的读起来有效率。

阅读时间:2015年1月15日--2015年1月18日

本书主要讲述的是大型网站的技术架构,着重从五个方面阐述需要关心的核心架构元素:性能、可用性、伸缩性、扩展性和安全性。

一、性能

1、Web前端性能优化

2、应用服务器性能优化--分布式缓存、异步操作、使用集群、代码优化

3、存储性能优化

二、可用性

1、高可用的应用--负载均衡进行失效转移

    2、高可用数据--数据备份、失效转移

   3、运行监控--监控数据采集、监控管理

三、伸缩性

    1、网站架构的伸缩性设计--不同功能进行物理分离实现伸缩、单一功能通过集群规模实现伸缩

    2、应用服务器集群伸缩性设计--HTTP重定向负载均衡、DNS域名解析负载均衡、反向代理负载均衡、数据链路层负载均衡、负载均衡算法

    3、数据存储服务器集群的伸缩性设计--关系数据库集群的伸缩性设计、NoSQL数据库的伸缩性设计

四、扩展性

1、利用分布式消息队列降低系统耦合性--事件驱动架构、分布式消息队列

2、可扩展的数据结构

五、安全性

此外,书中的最后部分列举了淘宝网、维基百科、秒杀网站的案例分析,将核心架构元素的各个部分带入实际项目中进行讲解,作者表达了一个重要的观点:业务的让出半步,技术前进一步。这个观点我非常赞同,考察任意一个国内外顶尖的大型网站发展历程,无一不是从小做起,真正等到业务完善,用户访问大量增加时,技术需要不断的创新提高,以应对海量的用户操作。但是,很明显有些产品只靠技术的增加是难以跟上用户的快速发展节奏的,比如12306,在初期即要面对每秒钟成百上千万次的并发,技术难度非常大,12306团队短期内很难解决这个级别的技术难题,如果修改一下业务方面的需求,如:以前全国车票都在一个时间点放出,现在用分时段放票的方式,早上8点,只开放全国10个城市作为首发站的车票,此时的访问量可能只有原来那种方式的百分之一,大大降低技术难度。因此,业务上的某些改善和妥协,带来的是用户体验的极大提高,对于此时的技术难度而言,也是可以在一个完全可控的范围。

由于作者的架构师身份,在文章末尾有完整的一篇内容来描述架构师这个角色,虽然目前我离这个角色还非常遥远,但是书中的很多观点还是可以学习的,摘抄部分我认为精彩的内容,以供学习。我个人认为,这部分阐述不仅仅是对架构师有用,对于创业者甚至普通工作的各行各业人员都可以通用。

1、领导的真谛:寻找一个值得共同奋斗的目标,营造一个让大家能最大限度发挥自我价值的工作氛围。一群优秀的人做一件他们热爱的事情,一定能取得成功。

2、是事情成就人,而不是人成就了事。指望优秀的人来帮自己成事,不如做成一件事情让自己和参与的人都变的优秀。发掘一个人的优秀比发掘一个优秀的人更有意义。

3、不要企图在项目中证明自己是正确的,你是来做软件的,不是来当老大的。所以不要企图去证明自己有多了不起,永远别干这种浪费时间、伤害感情的事。

一些职场建议:

1、把“我的问题”描述成“我们的问题”;

2、给上司提封闭式的问题,给下属提开放式的问题;

3、指出问题而不是批评人

4、用赞同的方式提出问题

5、在解决我的问题之前,先解决你的问题

6、适当的逃避问题

时间: 2024-10-12 04:28:21

读书笔记(二)-- 《大型网站技术架构:核心原理与案例分析》的相关文章

JAVA读书推荐----《深入分析Java Web技术内幕》--《java多线程编程核心技术》--《大型网站技术架构 核心原理与案例分析》-《Effective Java中文版》

(1)  首先推荐的不是一本书,而是一个博客,也是我们博客园另外一位博友java_my_life. 目前市面上讲解设计模式的书很多,虽然我前面讲了看书是最好的,但是对设计模式感兴趣的朋友们,我推荐的是这个博客.这位博友的设计模式讲得非常非常好,我认为90%的内容都是没有问题且很值得学习的,其讲解设计模式的大体路线是: 1.随便开篇点明该设计模式的定义 2.图文并茂讲解该设计模式中的结构 3.以详细的代码形式写一下该种设计模式的实现 4.补充内容 5.讲解该设计模式的优缺点 对于一个设计模式我们关

《大型网站技术架构-核心原理与案例分析》之一: 大型网站架构演化

最近刚刚读完李智慧的<大型网站技术架构-核心原理与案例分析>,对每章重点内容作了一些笔记,以便加深印象及日后查阅. 一.大型网站软件系统的特点 高并发,大流量:需要面对高并发用户,大流量访问. 高可用:系统7X24小时不间断服务. 海量数据:需要存储.管理海量数据,需要使用大量服务器. 用户分布广泛,网络情况复杂:许多大型互联网都是为全球用户提供服务的,用户分布范围广,各地网络情况千差万别. 安全环境恶劣:由于互联网的开放性,使得互联网站更容易受到攻击,大型网站几乎每天都会被黑客攻击. 需求快

大型网站技术架构--核心原理和案例分析 大型网站架构演化(一)

如果把上世纪90年代CERN正式发布web标准和第一个WEB服务的出现当作互联网的开始,那么互联网站的发展之经历了短短20多年的时间.在20多年的时间里,互联网的世界发生了变化,今天,全球有近一半的人口使用互联网,人们的生活因为互联网而产生了巨大的变化.从信息检索到即使通信,从电子购物到文化娱乐,互联网渗透到生活的每一个 角落,而且这种趋势还在蔓延.因为互联网,我们的世界正变得越来越小. 同时我们也看到,在互联网跨越式发展进程中,在电子商务火热的市场背后却是不堪重负的网站架构.某些B2C网站逢促

《大型网站技术架构核心原理与案例分析》阅读笔记-01

通过阅读该书籍我们能够更加清楚的树立大型网站的的技术发展历程,剖析大型网站技术架构模式,深入的讲述大型互联网架构核心原理,并通过一些典型的技术案例来讲述大型网站开发全景视图,该书籍深入的阐述了各种大型网站面临的各种架构问题及解决方案. 在第一章第一篇大型网站架构演化中了解到与传统企业应用系统相比,大型互联网应用系统具有高并发大流量.高可用性.海量数据.用户分布广泛,网络情况复杂.安全环境恶劣.需求快速变更,发布频繁.渐进式发展等特点:大型网站架构演化发展历程经历了初始阶段的网络架构它的应用程序.

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

阿里系的书,也是讲大型网站系统架构的,平常我们总是挂在嘴边的高性能.高可用.易扩展.安全性,这些所谓的系统非功能性指标到底如何实现,书里面讲了这些干货,作为网站架构师或者哪怕是应用系统的架构师,都值得了解,也许不一定都能用上,但是等需要用的那天,你肯定不会迷茫. 1.大型网站架构发展常见历程:应用/数据库分离--->使用缓存--->应用服务器集群--->数据库读写分离--->CDN及反向代理--->使用分布式文件系统和分布式数据库--->NoSQL及搜索引擎--->

【大型网站技术架构 核心原理与案例分析】读书笔记

章节 笔记 1.概述 网站架构模式:分层.分割.分布式.集群.缓存.异步.冗余.自动化.安全. 核心架构要素:性能.可用性.伸缩性.扩展性.安全. 4.高性能 一般重复请求一万次计算总响应时间然后除以一万得到单词响应时间. 测试程序并不是启动多线程然后不停发送请求,而是在两次请求之间加入一个随机等待时间. 吞吐量:每天通过收费站的车辆数目:并发数:正在行驶的车辆数目:响应时间:车速.TPS:每秒事务数:HPS:每秒请求数:QPS:每秒查询数. 性能计数器:System Load(系统负载,最理想

大型网站技术架构-核心原理与案例分析-阅读笔记4

在第四章案例章节中的淘宝网的架构演化案例分析小节中作者主要分析了淘宝架构的演化,以淘宝网的实例给我们分析介绍了淘宝网的业务发展历程及淘宝网的技术架构演化两个方面,在业务发展中作者写到淘宝的技术是随着淘宝业务一起发展起来的,业务是推动这技术发展的动力,淘宝如今的规模和当初有很明显的变化,在技术架构演化中介绍了架构技术的更新升级,该章节中主要介绍淘宝网的发展的历程,在随着时间的发展不断中网站的架构不断的引用着新的技术,由最初简单的c2c更改过来的网站,放弃了lamp架构转而使用java作为开发平台并

大型网站技术架构-核心原理与案例分析-阅读笔记3

在第二章的架构章节中的 随机应变:网站的可拓展架构的篇章中作者介绍了构建网站的可扩展架构.利用分布式队列降低系统的耦合性.利用分布式可复用的业务平台.可拓展的数据结构.利用开放平台建设网站生态圈五个方面,作者在讲述前通过微信的成功发布及其中摇一摇功能的加入的开发的快捷引出来的,其中构建网站的可扩展架构中区分了扩展性和伸缩性的区别,讲到了低耦合性的系统跟容易扩展,并且更容易复用,一个低耦合性的系统也可以让系统更加容易的开发和维护,在如何降低系统的耦合性中,作者主要介绍用分布式消息队列的方法来降低系

大型网站技术架构-核心原理与案例分析-阅读笔记5

在第四章案例章节中的海量分布式存储系统Doris的高可用架构设计分析的小节中作者主要分析介绍了分布式存储的高可用架构和不同故障情况下的高可用解决两个方面,在两小节前作者给我们介绍了Doris是一个海量分布式KV存储系统,其设计的目的是支持中等规模高可用.可伸缩的Kv存储群.跟主流的NoSQL系统HBase相比,doris具有相似的性能和线性伸缩能力,并具有更好的可用性及更友好的图形用户管理界面.而在分布式存储的高可用架构的小节中作者给我们分析了Doris的整体架构,其系统整体上可分为应用程序服务

学习笔记8:《大型网站技术架构 核心原理与案例分析》之 固若金汤:网站的安全架构

一.网站攻击与防御 攻击: 1.XSS攻击:危险字符转义,HttpOnly 2.注入攻击:参数绑定 3.CSRF(跨站点请求伪造):Token,验证码,Referer Check 4.其他漏洞攻击 Error Code HTML 注释 文件上传 路径遍历 防御: 1.Web应用防火墙:ModSecurity 2.网站安全漏洞扫描 二.信息加密技术与密钥管理 1.单向散列加密 2.对称加密 3.非对称加密 4.密钥安全管理 三.信息过滤与反垃圾 1.文本匹配:正则,Trie算法,多级Hash,降噪