将近一年没有写博客,前面一直比较忙,加上一些事情耽搁了,然后自己也在一直思考沉淀,毕业2年的心态跟第一年又不太一样了,不过经验、知识也不一样,个人成长许多,沉淀这一年,我想推荐这些书给你。
一、《Redis开发与运维》
是不是redis只会set、get,然后在加上一个过期时间就吊炸天了,只能说你太幼稚,想不想知道里面一些底层的原理呢,Redis怎么持久化、过期的策略、复制、哨兵、集群、设计与运维等等。看这本书就对了,我觉的这本书特别适合对缓存只会set、get操作同学,能够让你的技术深度更进一步。豆瓣评分9.0
二、《从Paxos到Zookeeper》
炸了,zookeeper好多同学可能连创建节点和删除节点这些都没有操作过,我也是属于这一类,只会启动。那我推荐这本书可以让你更了解zookeeper,知道什么永久节点和临时节点、有序节点这小case,更能让你知道paxos算法,zap协议,让你知道怎么使用、部署zookeeper,zookeeper的使用场景、以及zookeeper的一些原理,例如:zookeeper选举机制、基于zookeeper的分布式锁、服务注册与实现,以及zk的节点监听(让我大开眼界的是我以为zk的监听是永久有效的,实际上是监听只有一次有效,我们看到的都是基于api的实现)等等这些技术内幕,值得很多同学学习了解。
三、《Java8实战》
都Java11还推荐Java8,有点诡异,不过我相信还是挺多人的项目在使用低版本的JDK,一开始使用Java8的时候会很不适应,我一开始的时候也只是会用,对一些东西了解很浅,很多时候写一些代码还得搜索。随着了解与理解深入,我发现不用lambda表达式已经不习惯了,看完这本书,你可能惊讶于JDK升级的考虑还是让人耳目一新的,你会了解原来这么多Java8的操作这么6的,了解Java8的默认方法的作用以及优先级,以及Java8的并行流、异步编程等等功能。赶快去体验,相信我,等你熟悉了你会爱上Java8的。
四、《MySQL技术内幕-InnoDB存储引擎》
什么,我本地执行sql很快,到线上执行特别慢,什么索引又加错了,等等一系列的问题暴露了你对mysql的不了解,相信很多Java开发者都离不开mysql,你真的对mysql了解吗?知道什么是间隙锁、意向锁,肮读、幻读、不可重复读的原因,以及索引的数据结构与算法以及应用,事务的实现,以及mysql表的结构与各种文件,以及undo和redo日志,mysql备份与恢复等等知识,让你对数据库更加了解。
五、《Spring技术内幕》
这本书我买来放了快一年多才啃完的,每次看了一会又放那里了,太难啃了,然后年初的时候抽了一个礼拜去看的,看完之后很沉迷了,发现很多还是写的不错的。如果你对ioc和aop的实现还不太了解,对spring的启动过程不太了解,对springMVC不熟悉的,以及对spring的事务和spring的数据库相关的东西不了解,这本书值得你读一读,打开你进入spring的世界。
六、《Java并发编程艺术》
如果你对Java并发编程不太了解,以及项目中很多时候遇不到高并发,好多公司进去的时候都说项目高并发、大数据量什么,进去发现crud,那你是不是就认定自己只能crud呢,这本书也许可以让你对并发编程有更深的了解,Java的加锁机制、原子性、以及一些日常并发操作的类,以及很多你平时没有使用过的并发工具类:FutureTak,信号量,闭锁(Latch)和栅栏(CyclicBarrier),线程池等等。了解熟悉这些能够让你Java的功底更加扎实。
七、《码出高效:Java开发手册》
阿里10月出的,我领导马上就买了,我也就顺手看了看,嘿嘿。确实不错的书,介绍各个方面得知识,有深入细节也有整体框架,适合给自己形成整个Java的开发体系,既有代码规范的讲解,也有源码的分析,也有个人成长的规划,我觉得是目前我看的在各个方面都挺不错的书,不过我觉得你需要精通某一方面的知识还是需要自己去钻研,着本书只能给你指明一条康庄大道,具体的还是需要自己研究。
上面的书籍都是我今年看完的觉得不错,还有一部分看完没有整理出来。我觉得很多Java开发者都应该看看,让自己的知识体系丰富起来,同时形成自己的专长。一个精!以上所有书籍我大部分都是看的纸质书籍,没有pdf,个人觉得这些书都是值得给自己买,所以不用叫我发pdf了,我也没有。