学习是技术人员成长的基础,本次分享20本技术方面的书籍,这些书不是每一本都是经典,但是每一本都有其特点。以下20本大部分本人都看过,因此推荐给大家。(本次推荐的20本只是一个参考,比如像Head First,Java编程思想等经典书籍是大家都知道,因此不在推荐之列)

本次分享大纲

  1. 大型网站架构系列

  2. 分布式系统系列

  3. BAT技术文学系列

  4. 架构设计系列

  5. 本次分享总结

一、大型网站架构系列

第一本:《大型网站技术架构:核心原理与案例分析》

这是本算是国内大型网站架构的经典之作,由阿里人李智慧创作,听名字就知道本书很有智慧。主要从大型网站架构的特点,架构目标(高性能,高可用,可伸缩等)基本理论讲起,并介绍了几个很有特色的案例。

之前群内分享的大型网站架构系列的基础理论大部分出自此书。

第二本:《大型网站系统与Java中间件实践》

同样出自阿里的技术牛人。此书对分布式系统的演进做了较好的介绍。对常用中间件(服务框架,数据访问层,消息中间件)做了比较深入的讲解。(原理到实践都有了)

第三本:《大型分布式网站架构设计与实践》,很抱歉本书也出自阿里系。

对面向服务的架构,分布式基础设施(缓存,持久化,消息系统,搜索引擎(lucence,solr)),互联网安全架构,系统稳定性,数据分析等做了较好的讲解。

以上三本书,都出自阿里系,有理论有实践,如果要学到知识,还需要多读,多想,多实践。比如第一本,个人看了至少5遍以上。其他两天也在三遍左右。

第四本:《Web信息架构——设计大型网站》

可以较系统的建立网站信息架构设计的思想。对思考如何设计一个大型网站比较有帮助。

信息架构,注意这几个词所涉及的知识。

第五本:《高性能网站建设》,对web前端架构做了非常好的讲解。

注意此处的前端不只是 JS,CSS,HTML,是指业务逻辑层之前的部分。包括缓存,DNS等。

第六本:《实用负载均衡技术:网站性能优化攻略》,本书较详细的介绍了负载均衡,缓存代理等知识,对系统了解负载均衡技术有帮助。

第七本:《高性能电子商务平台构建:架构、设计与开发》,本书可以作为功能架构参考,因为他讲的是国内一个开源商城的架构。一方面作者可能是为了推广他的开源商城,因此建议初学者或者想了解此开源系统的人学习。不建议所有人学习。

第八本《高性能网站构建实战》,建议运维人员可以参考。里面介绍了LVS+KeepAlived实现高可用集群,高性能负载均衡器HAProxy,经久不衰的Squid,高性能缓存服务器Varnish,Ngnix等。里面有大量的安装脚本,因此建议运维或想了解如何部署的参考学习。

以上是分享的八本关于大型网站架构的书籍。

二、分布式系统系列

第一本:《从Paxos到Zookeeper:分布式一致性原理与实践》,这一本是Leader-us老师推荐的。对于了解分布式和Zookeeper很有帮助。内容有一致性协议,2PC,3PC,Paxos算法,Paxos的工程实践,Zookeeper的安装使用, ZooKeeper的典型应用场景等。本书也出自阿里系。

第二本:《ZeroC Ice权威指南》,作者是我们群内的S级资深架构师Leader-us老师所著。

对于学习Zeroc Ice很有帮助。Zeroc Ice是与dubbo类似的一套框架。可以实现RPC和服务治理。

关于更多ZeroC Ice知识,可以咨询Leader-us。

第三本:《Kubernetes权威指南:从Docker到Kubernetes实践全接触》是介绍Docker和Kubernetes比较不错的一本书。作者也有我们的Leader-us老师。

第四本:《大规模分布式存储系统:原理解析与架构实战》,对了解分布式存储有一定的帮助。

从单机存储到分布式存储,事务,并发控制等。对常用的分布式存储系统,键值系统,表格系统,分布式数据库等有较好介绍。理论和实践都有,如果自己没实际去思考去做,都可以归为理论。

分布式系统,大数据方面了这次就不介绍了。感兴趣的可以群内咨询。

三、BAT技术系列

推荐三本技术文学类书籍。第一本是《淘宝技术这十年》,第二本是《京东技术解密》,第三本是《华为研发》

第一本:《淘宝技术这十年》群内有电子版,个人看了至少三遍以上。生动形象的介绍了淘宝从小到大的技术发展历程。对思考技术发展有较好的帮助

第二本:《京东技术解密》,可以作为参考吧,本人买了一本,但还没详细看。总体来看,《淘宝技术这十年》质量和内容上更好一些。

第三本《华为研发》本人几年前看的是第一版,现在又第二版了。此书对华为技术的发展和管理变革有一定了解,从而指导自己对技术管理进行一些改进。

小插曲:谈一下技术和管理在个人发展中的看法。

人工作有十年了,做过几年技术也做过几年管理。在个人的经历中,对技术和管理有一些不同的看法。

首先,做几年技术后发现希望做管理,做管理后发现想做技术。经过思考发现是自己对技术和管理认识不足,知识掌握不对。

比如技术如果不能提高到架构师级别,就只能code,这样一年一年薪资不涨也基本看到了尽头。

因此做技术必须要做到架构师级别。(可能话有点慢),但是个人最近的感悟。只有做到架构级别,从一定的高度思考技术问题,才能不会被淘汰。

Leader-us<springcomingagain@qq.com> 20:18:01

专注技术,同时培养技术派的领导能力,经验越丰富,越需要在IT圈里培养知名度,参与开源或者很多技术获得

因此,我做管理后,又转到了技术。到现在基本了解如何去做一个架构师了。

到这个时候,发现应该去做管理。

呵呵~~因为个人的发展模式是技术+管理的模式发展。以下是架构,管理方面成长的知识参考。

架构方面:面向对象,设计模式,架构模式,分布式系统,业务架构(常用系统架构),具体技术广度和深度等;

管理方面:项目管理(PMP,PRINCE2),敏捷管理,流程规范(CMMI等),通用管理知识等。

四、架构设计系列

第一本:《研磨设计模式》,这本书详细对GOF设计模式进行了讲解。

设计模式讲的比较细致,透彻。传说网上有研磨设计模式作者的视频。有的可以分享一下。

这是本人推荐的详细学习设计模式的第一本书。

像HeadFirst这类的就不说了。

大话设计模式也可以看下,不过入门可以,但深入研究就需要看别的了。

第二本:前几天给大家推荐过《面向对象葵花宝典》,对理解面向对象思想有一些帮助。对面向对象理解做了较到位的描述。

第三本:《.NET应用架构设计:原则、模式与实践》,不过这本是NET写的。对常用的架构模式做了介绍。比如N层设计,业务层设计,逻辑层设计,服务层设计,数据层设计等。对了解各层的设计方法有不错的帮助。本人看这本书也至少三遍以上。

比如在服务设计中有一个幂等的模式,是分布式系统中较长用到的。

第四本:《Microsoft .NET企业级应用架构设计》,与《NET应用架构设计:原则、模式与实践》想对应的是本书也是从业务层,服务层,等进行架构模式的架构。讲解的方式有点不同。虽然是NET语言的,但是对Java或其他语言都有帮助。比如:假如一个人说MVC是设计模式,你就懂的MVC是架构模式。

第五本:最后,再给大家分享一本架构的书。原因是技术积累会成为类库,类库逐渐会变为框架。一个人架构设计的能力,很大程度体现在框架设计方面。因此,最后一本书是《架构探险:从零开始写Java Web框架》

本书从零开始,介绍了如何搭建一个web框架。bean实现,aop实现等。本书个人读了两遍,感觉对设计框架和封装模块有一定的帮助。

五、本次分享总结

以上是本周的分享,原计划分享消息队列技术,但考虑到如果能分享一些书籍可能对大家帮助更大,也是之前答应某些群友的,并且是16年第一次分享,因此临时改为分享技术书籍。希望对大家有帮助,分享的书籍大部分是个人看过的,可能不是最好的,但每一本都有亮点。这次分享出来,供大家学习参考。

最后,再次倡议大家购买纸质书,1.对眼睛好;2.尊重知识产权。

web技术人员-推荐书籍的更多相关文章

  1. Web前端开发推荐书籍

    Web前端开发推荐书籍 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 读 书吧~相对于在网上学习,在项目中学习和跟着有经验的同事学习,书中有着相 ...

  2. 给 Web 开发人员推荐的通用独立 UI 组件(一)(按钮很不错)

    现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...

  3. 给 Web 开发人员推荐的通用独立 UI 组件(二)

    现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...

  4. Web 开发人员推荐的通用独立 UI 组件

    现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...

  5. Web 技术人员需知的 Web 缓存知识(转)

    最近的译文距今已有4年之久,原文有一定的更新.今天踩着前辈们的肩膀,再次把这篇文章翻译整理下.一来让自己对web缓存的理解更深刻些,二来让大家注意力稍稍转移下,不要整天HTML5, 面试题啊叨啊叨的~ ...

  6. Web 技术人员需知的Web 缓存知识

    最近的译文距今已有4年之久,原文有一定的更新.今天踩着前辈们的肩膀,再次把这篇文章翻译整理下.一来让自己对web缓存的理解更深刻些,二来让大家注意力稍稍转移下,不要整天HTML5, 面试题啊叨啊叨的~ ...

  7. 向 Web 开发人员推荐35款 JavaScript 图形图表库

    图表是数据图形化的表示,通过形象的图表来展示数据,比如条形图,折线图,饼图等等.可视化图表可以帮助开发者更容易理解复杂的数据,提高生产的效率和 Web 应用和项目的可靠性. 在这篇文章中,我们收集了3 ...

  8. 向Web开发人员推荐12款优秀的 Twitter Bootstrap 组件和工具

    http://www.cnblogs.com/lhb25/archive/2012/09/11/resources-that-complement-twitter-bootstrap.html

  9. Web前端开发推荐阅读书籍、学习课程下载

    转自http://www.xuanfengge.com/fe-books.html 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 除了在项目中学 ...

随机推荐

  1. 【Math】余弦相似度 和 Pearson相关系数

    http://cucmakeit.github.io/2014/11/13/%E4%BF%AE%E6%AD%A3%E4%BD%99%E5%BC%A6%E7%9B%B8%E4%BC%BC%E5%BA%A ...

  2. ALTER SEQUENCE 修改序列解决唯一约束冲突 unique constraint violated

    背景 自增序列会遇到也会遇到唯一约束冲突吗?是的,最常见的情况就是数据迁移之后,导致数据最大值超过序列值. 软件开发中不遇到些出乎意料的问题,总感觉不太够劲. 修改序列(ALTER SEQUENCE) ...

  3. 【工作代码】复杂 JSON 值替换处理

    总结下最近的工作遇到的点:入参复杂 JSON 层层嵌套,Java 怎么优雅的处理. 一.关于 JSON JSON 是类似 XML 用于存储和交互文本信息.但优于 XML ,其更小,更快,更易懂和解析. ...

  4. CSS基础(一):开篇

    背景 HTML是一种超文本标记语言,用来定义文档的结构和内容,例如标题.段落和列表等等,而文档内容如何渲染.如何展示,这就需要样式来修饰了.CSS正是可以与HTML很好地结合.如果将HTML比作水,那 ...

  5. 获得 LayoutInflater 实例的三种方式

    在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...

  6. 一个自动备份mysql数据库的bat文件内容

    自动备份mysql数据库,并已当前的日期时间为目录 copy过去, xcopy将近15年没有用dos命令,还是这么亲切 另 本方法是备份数据库文件,不是dump导出,然后再计划任务中使用,我用的是wa ...

  7. 译:C#面向对象的基本概念 (Basic C# OOP Concept) 第二部分(封装,抽象,继承)

    6.封装 封装就是对外部类隐藏成员或变量.我已经说过房子的保安仅仅被限制在房子的入口处,不需要知道屋内发生了什么.房主对保安隐藏了屋内所发生的任何事,以便更安全.隐藏和限制就被称为封装. 例如我们有两 ...

  8. devexpress表格控件gridcontrol设置隔行变色、焦点行颜色、设置(改变)显示值、固定列不移动(附源码)

    介绍一些常用的gridcontrol设置. 1.设置隔行变色.首先设置显示隔行变色,步骤:OptionsView-->EnableAppearanceEvenRow-->true和Opti ...

  9. 我所研究过的 ASP.NET MVC 或者 .NET 或者 ORM 或者框架的开源项目

    ASP.NET MVC 的开源项目有很多,这里列出我所研究过的: SocialGoal v1.0.0 prodinner nopCommerce SmartStore.NET 由于今天才做收集工作,可 ...

  10. client/scroll/offset width/height/top/left ---记第一篇博客

    client/scroll/offset width/height/top/left (盒模型为contentBox,定位原点是元素左上角边框最外层的交点) clientWidth  width+左p ...