有效经验:
1刘欣的spring课程,聚焦关键脉络,能串起来,而不是陷入细枝末节,越看脑子越乱。
2数据结构学习,精确的配图一目了然,非常容易理解。脑子里能自动闪现出流动的画面。
无效的经验:
1 花费大量的时间学习算法。效率很低。也不是没有用处,是有点没法落地,找不到跳一跳,够得着的感觉了。
使用mq是异步操作,大量导入数据。
现在的消息队列主要是用作录音的问题。方法是采用报警邮件的形式进行监控。
保证消息顺序?事务?
你们用的是RabbitMQ?那你说说RabbitMQ的底层架构原理,逻辑架构、物理架构以及数据持久化机制?
RocketMQ很大的一个特点是对分布式事务的支持,你说说他在分布式事务支持这块机制的底层原理?
现在很多互联网大厂都会有基本功的考察,举个例子,Java虚拟机的核心原理、内存模型、垃圾回收、线上FullGC卡顿性能优化、线上OOM内存溢出问题你处理。
Java并发中的volatile、锁优化、AQS源码;
Netty背后的IO、网络相关的知识。
其实这种底层技术,是线上高负载大型系统的架构设计和开发,必须要具备的。
因为底层技术不扎实,很多中间件或其他高阶的技术,都无法深入理解其原理。
而且很多时候,解决线上系统的生产故障,都需要这些技术。因此,底层技术的掌握是一个优秀工程师必须具备的素养