只会一点java

java持续学习者,每月一篇博客。罗列出技术栈,慢慢完善,持续学习,总有一天,你会追上甚至超越曾经的大神。
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

Java工程师的生活、读书、技术栈

Posted on 2018-03-30 10:13  只会一点java  阅读(4033)  评论(5编辑  收藏  举报

一、引子

本文概括了一个java工程师的生活、必读书籍、技术栈,并持续更新中。希望对迷茫中的你有所指引。

方式:Java技术栈+链接。

二、生活篇

北漂不易,逆风前行

30岁的程序员,未来之路-写于疫情笼罩下的北京

离京总结-写于离京前夕

一切安定下来,思考一下未来

 

三、管理篇

技术人的思想提升

技术人如何打破瓶颈

程序员如何成为架构师

四、必读书籍推荐

 

目录 书籍名称 知识点 描述

java编程

 

《Java从入门到精通》入门足矣。

   
《effective java》--》四星推荐,工具书,时长翻看一下规避坑。    

jvm

《深入理解java虚拟机》

java历史+jvm内存+虚拟机执行+程序编译优化+并发。 超五星推荐,建议看上多遍。主攻原理,深入浅出,楼主到现在依然不敢说完全吃透这本书。
实战Java虚拟机——JVM故障诊断与性能优化》第二版 主攻JVM实践,各种调优。 四星推荐。看完一篇感觉一般。但毕竟JVM调优的数据很少,凑活用。

数据库/缓存

《Mysql技术内幕-InnoDB存储引擎》 原理多,从现在主流innoDB引擎入手,深入讲解mysql. 超五星推荐,建议看多遍。由于讲的比较深且抽象,后端研发可以有选择的看。先看其中几章,慢慢吃透全书
《高性能Mysql》第三版。 索引、查询等围绕性能优化讲解的不错 超五星推荐,内容极端概括且有深度。书很厚,适合有一定经验的开发者看,不然很可能吃不透看不下去。
《PostgreSql实战》 内容有深度,讲的东西基本都能用到 五星推荐,国内针对PG的书确实不多,这是一本值得读的书。
《Redis深度历险-核心原理与应用实践》 原理+源码+应用 四星推荐,讲解生动,200多页的很薄的一本书,全彩...鉴于咱们是开发并不是DBA,看看这本书作为redis入门也够用了。

设计模式

《设计模式的艺术-软件开发人员内功修炼之道》 中国人写的设计模式,还可以。 四星级推荐。市面上的设计模式都很老的,十年前的。这本比较新可以看看。不过话说设计模式不是光看书来的,要结合源码、真实项目实践才能很好的领悟奥义....

算法

《算法第四版》 算法基础,教材版,基本的算法都涵盖到 超五星推荐,全部java实现算法,讲解透彻。书很厚,算法比较全。官网可以下载到源码包,结合源码包,方便调试,非常好。
《漫画算法-小灰的算法之旅》 算法概念、数据结构、基础算法,面试中的算法,简单应用。 五星推荐,19年算法新书榜销量冠军,200多页书很薄,可以快速学习算法。你能想象一本全彩的算法书吗...本书作者还有微信公众号,持续更新算法相关文章。

并发

 

《JAVA高并发程序设计》 并发 四星级推荐,除了第七章,其它几章都可以看看。
《JAVA并发编程实战》 并发的元老级别的书,必看 超五星推荐,经典。每一页都是经典。

区块链

《区块链原理、设计与应用》 历史+原理+应用 四星级推荐,原理讲的很清晰。

开源框架

《spring实战第四版》 ioc+aop+web 四星级推荐,主流框架,建议挑选章节看,毕竟有些东西用不到。
《Spring Cloud 微服务实战》 工具书 四星推荐,作为spring cloud工具书还是不错。
《springcloud与docker》
微服务架构实战
工具书 一般

架构

《凤凰架构》  周志明大神的书,全开源。架构师必读。  超五星推荐。非常适合架构师扫盲、构建自己知识体系使用。
管理

 高效能人士的7个习惯

   超五星推荐,经典,管理学必读书籍之一。

《平台型组织:释放个人和组织的潜能》

   

《智能商业》、《智能战略》

   

《掌控习惯》

   

五、技术树

一级目录 二级目录 链接
java入门

jdk入门

OpenJDK-Hotspot源码包目录结构

Java异常简介、异常捕获还是上抛总结

JDK8-十大新特性-附demo

RSA加密

在openjdk8下看Unsafe源码

Java中关于WeakReference和WeakHashMap的理解

java集合

JDK1.7升级1.8 HashMap原理的变化

Vector集合详解
 一些习惯

新人如何快速剖析源码

jvm

jvm和调优

JDK8-废弃永久代(PermGen)迎来元空间(Metaspace)

Eclipse Memory Analyzer,内存泄漏插件,安装使用一条龙

线上CPU飙升100%问题排查,一篇足矣

JVM系列6-GC算法

线程

线程

Thread类源码剖析

从Thread.start()方法看Thread源码,多次start一个线程会怎么样

ThreadLocal终极源码剖析-一篇足矣!

多线程

《The java.util.concurrent Synchronizer Framework》 JUC同步器框架(AQS框架)原文翻译

AbstractQueuedSynchronizer AQS框架源码剖析

Java的LockSupport.park()实现分析

终极锁实战:单JVM锁+分布式锁

对象内存布局、synchronized终极原理

同步中的四种锁synchronized、ReentrantLock、ReentrantReadWriteLock、StampedLock

锁Synchronized

zookeeper分布式锁

并发

常用线程池和调度类

根据CPU核心数确定线程池并发线程数

多线程并发执行任务,取结果归集。终极总结:Future、FutureTask、CompletionService、CompletableFuture

多线程经常使用的3个关键字:synchronized、ReentrantLock、volatile

算法

基础算法

https://visualgo.net/zh算法动态图网站

十大基础排序算法[java源码+动态图解析+性能分析]

常见算法合集[java源码+持续更新中...]

高阶算法

红黑树

 

最小生成树(一)概论

最小生成树(二)Prim算法

最小生成树(三)Kruskal算法

最小生成树(四)总结

 

最短路径:Dijstra(迪杰斯特拉)算法

字符串

字符串排序

单词查找树

子字符串查找

数据压缩

分布式算法

 

分布式共识算法 (一) 背景

分布式共识算法 (二) Paxos算法

分布式共识算法 (三) Raft算法

分布式共识算法 (四) PoW算法

开源框架

    

 

 

 

 

    

 

 

 

 

 

 

 

 

 

Spring 框架

异步任务spring @Async注解源码解析

@Transactional事务提交后触发异步方法

Spring bean 生命周期验证

spring boot容器启动详解

 

Spring IOC:

Spring IOC(一)概览

Spring IOC(二)容器初始化

Spring IOC(三)依赖注入

Spring IOC(四)总结

Spring Kafka原理详解

kafka原理和实践(一)原理:10分钟入门

kafka原理和实践(二)spring-kafka简单实践

kafka原理和实践(三)spring-kafka生产者源码

kafka原理和实践(四)spring-kafka消费者源码

kafka原理和实践(五)spring-kafka配置详解

kafka原理和实践(六)总结升华
Spring Cloud(boot)

 

spring cloud feign不支持@RequestBody+ RequestMethod.GET,报错

@RequestBody对象为空,异常Required request body is missing

spring cloud Gateway简单使用

 

Spring Cloud 系列之Hystrix、Ribbon、Feign 源码剖析(一)引子

Spring Cloud 系列之Hystrix、Ribbon、Feign 源码剖析(二)原理概括

Spring Cloud 系列之Hystrix、Ribbon、Feign 源码剖析(三)源码详解

Spring Cloud 系列之Hystrix、Ribbon、Feign 源码剖析(四)总结提高

zookeeper

zookeeper(zkCli)命令概览

dubbo

 

spring-mybatis

 

spring 事务(本地事务)

spring事务详解(一)初探事务

spring事务详解(二)简单样例

spring事务详解(三)源码详解

spring事务详解(四)测试验证

spring事务详解(五)总结提高

分布式事务

分布式事务(一)原理概览

分布式事务(二)JTA规范

分布式事务(三)mysql对XA协议的支持

分布式事务(四)简单样例

分布式事务(五)源码详解

分布式事务(六)总结提高

 

Sagas论文原文读后总结

Seata的技术调研

Seata TCC落地实践

Googe Guava

Guava 1:概览

Guava 2:Basic utilities基本工具

Guava 3: 集合Collections

Guava 4: Guava cache

Guava 6:Concurrency

Guava 12:Guava EventBus源码剖析
 RocketMQ

线上RocktMQ重复投递半事务消息故障排查

基于RocketMQ实现分布式事务(半消息事务)

 

RocketMQ详解(一)原理概览

RocketMQ详解(二)安装使用详解

RocketMQ详解(三)启动运行原理

RocketMQ详解(四)核心设计原理

RocketMQ详解(五)总结提高

redisson

redisson底层lua脚本原理剖析

设计模式

 

观察者模式

一文掌握设计模式(定义+UML类图+应用)

数据库/缓存

 

mysql

mysql事务隔离级别和MVCC

PowerDesigner连接mysql逆向生成pdm

mysql按照天统计报表,当天没有数据,填0

日志监控系统中,大批量查询mysql方案

单表千万级数据迁移实践方案-乞丐版,不使用大数据平台

 postgreSql

PostgreSql一个月学习计划

【5分钟】W10 64bit系统安装postgresql 11

postgreSql最佳配置详解

postgreSql终极锁实战

缓存

基于Redis的爬虫平台的实现

google cache源码详解

内存缓存 Gcache VS Caffeine源码详解

redis详解(一)原理概览

redis详解(二)简单样例

redis详解(三)源码详解

redis详解(四)总结提高

linux

 linux内核

 Java线程与Linux内核线程的映射关系

容器

Rancher

Rancher监控指标一文干到底(workload metrics)

架构 架构师之我见

架构师之我见(一)入门篇

架构师之我见(二)进阶篇

架构师之我见(三)未来篇

 DDD领域驱动设计

 

DDD领域驱动设计落地实践(十分钟看完,半小时落地)

 

架构编年史

软件架构(一)概览

软件架构(二)编程语言的历史

软件架构(三)名词解释:架构、设计、风格、模式

软件架构(四)单体架构(Monolithic Architecture)

软件架构(五)分层架构

软件架构(六)MVC架构历史

领域驱动架构及其演变史(EBI、DDD、端口适配、洋葱、整洁)

服务端架构演进史


事件驱动架构

CQRS架构

清晰架构

SOA

微服务架构

凤凰架构系列

远程服务调用(RPC与Rest本质区别)

透明多级分流系统(架构扫盲贴)

流量治理:

分布式架构-流量治理-服务容错

分布式架构-流量治理-流量控制

可靠通讯:

分布式架构-可靠通讯-零信任网络

分布式架构-可靠通讯-服务安全

可观测性:

分布式架构-可观测性(一)-原理概览

分布式架构-可观测性(二)-事件日志

分布式架构-可观测性(三)-链路追踪

分布式架构-可观测性(四)-聚合度量

Cloud Native云原生架构

云原生架构学习计划

 

云原生架构(一)原理概览

云原生架构(二)环境搭建

云原生架构(三)简单样例

云原生架构(四)源码详解

云原生架构(五)总结提高

服务网格

service mesh

 大数据

大数据(一)背景和概念

大数据(二)大数据架构发展史

大数据(三)大数据技术栈发展史

国际化

一文搞懂国际化(一)背景概览

一文搞懂国际化(二)架构设计

一文搞懂国际化(三)落地实践

一文搞懂国际化(四)总结提升

 其它

 工具

 

maven常用插件pom配置

ClassLoader.getSystemResourceAsStream("a.txt")获取不到资源文件

一台电脑支持2个git账号:gitlab+github

jenkins配置从git指定分支下载代码,打包部署jar包

Apollo获取配置异常:Load config failed, will retry in 1 SECONDS

IDEA 报错 project is already registered

UML

  一小时入门UML    (Ivar Jacobson)

项目管理

 

敏捷开发

 

一文读懂敏捷开发

书籍:Clean Agile  -Uncle Bob

精细思想的复兴

UML之父Ivar Jacobson:精益思想的复兴有感