转码人学Java的8个宝藏网站!学起来!
分享一个超级硬货 —— 互联网 Java 工程师进阶知识完全扫盲,目前 Github Star 已达到63.2K,Fork 为17.1 K。不但适合于平时知识点的回顾,对于想跳槽的小伙伴来说也是一份面试宝典。
该项目涵盖了高并发、分布式、高可用、微服务、海量数据等领域,并且每一项都是以面试官的角度来对技术知识点进行层层剖析解答。相信只要准备一周加以深入去学习,offer 一定会手到擒来[憨笑]。
欢迎大家转发、收藏、关注,一起交流[呲牙]。
#程序员#
2022最新Java后端面试题汇总
#数据分析# #大数据# #Java# #Java面试题# #怎样学习Java# #知识分享#
4年 Java面试记录
1、java基础不错,可以回答常用技术、知识点,JVM底层不清楚,但知道JVM内存划分,知道CurrentHashMap作用,不了解原理

2、多线程实现方式回答的可以
3、集合类回答的可以
4、数据库事务级别回答可以,锁不了解,默认事务隔离级别不知道
5、知道索引、索引失效的情况、索引数据结构,主键选择也有了解
6、MyBatis会用,感觉熟练度还可以
7、Redis基础可以,没用过高可用,只是会用,了解数据结构
8、对分布式了解还可以
9、了解微服务,会用Spring Cloud
10、对spring的DI有一定了解,不了解原理。
11、对所开发的业务可以很熟练的讲解,说明对业务理解可以。
总结:沟通能力较强,理解能力较强。目前感觉可以熟练胜任业务开发,有一定学习能力和动手能力。
4年的这种,一般都是从SSM框架转到Spring B oot,有的公司会做微服务,但是微服务这种东西,不一定是最适合的技术方向,否则弄得四不像。

杭州一程序员:
为什么Java 面试都是八股文,什么分布式锁,高可用,一大堆屁话。进公司打开代码一看,纯纯springboot,连个模块都不分
1、不是用了才需要会。比方说在构建服务时的技术选型,三四个技术方案,最后真正使用的只有一个,代码中也只体现了那一个设计方案。但这不代表你只要会被选中的即可,那些没有被选中也要会,不然你连如何选择都不知道,甚至可能连选项有哪些都不知道
2、就是单纯的考考你吧,分布式所和高可用和用啥语言无关,对于大部分公司来说,能把一个自研的有状态的服务做到高可用,已经算这个公司产品的核心竞争力了
3、没办法,就是大厂硬卷带起来的,搞的现在小公司流行面试造火箭,工作拧螺丝,大伙都被恶心的不行,然并卵,该背八股文还是得背,大环境就那样
对此,你怎么看?

#2022就业季##杭州头条#
马士兵老师今天为大家分享5套阿里巴巴学习手册!
这五份手册分别是:阿里巴巴Java开发手册(终极版)、阿里巴巴Java性能调优实战(2022华山版)、阿里巴巴机器学习算法大集结、阿里巴巴面试参考指南(2022黄金泰山版)、淘宝商城亿级并发架构设计思想(2022版)!
大家需要学习这五套学习笔记的同学可以看我这篇文章的置顶评论!#Java##程序员##行车记录仪拍地震瞬间:整条路在晃#
在面试一些中高级java工程师的时候,我通常会问到下面这个问题。
假如说现在有一个接口,它在刚刚投产运行的时候,执行效率会特别高,但是随着用的时间越来越长,它的执行效率会变的越来越差,你觉得都有什么可能的情况,会造成这个问题,并且怎么去解决它。
别看这一个小小的问题,但是它考察的点和延伸的点,特别特别的多,像nginx的使用,数据库优化,redis使用,异步消息队列的使用,内存泄漏,jvm调优,等等等等。

其实在面试的时候,我很讨厌问关于八股文的东西,什么冒泡排序,快速排序等等,这些问题,即使答的很好,也不能证明你工作能力很强,没答上来,也不能代表能力不行,所以这种问题没有任何的价值。但是像我问的接口效率变慢的这个问题,如果你答的很好的话,你的工作能力大概率是没有问题的,当然了,我也不敢说一定,我只是说大概率,后面还需要用其他面试题,和试用期的表现,来进一步考察。但是相反,你如果答的不好,比如数据库优化这一块,你都想不到是由于数据量的问题使接口变慢,或者数据库优化说不明白的,那基本就可以拜拜了。
大家怎么看呢,欢迎评论区留言讨论[握手]
2022.04.08 自学Java进大厂,打卡第32天。
准备面试,面试,面试!
springboot,zookeeper,dubbo,nginx面试题继续刷起来![灵光一闪]都是前人经验,佩服面试官同学,居然能从中识别哪些是背题的!

【下载!Java 高级工程师的必备手册】全面覆盖 Spring Boot 2.5 新特性、自动化配置原理、如何开发 REST API、 实战 MySQL 数据库、Redis 高并发缓存、MongoDB 数据库、MQ 消息队列、安全机制、 性能监控、高级面试题等热门知识点。让你一书在手,知识点、面试题、开发实战通通不是问题!网页链接
JAVA高级面试,年薪几十W,大厂面试题揭秘,小白勿看,看了也不会,大佬们,你能回答上来多少?#JAVA# #高级开发必然要向架构师靠拢吗# …#程序员#
Java基本功可能是面试官问得最多的话题,什么Spring、Springboot还有Springcloud微服务架构等等并不能体现一个人的能力,下面这些基础知识可能最常问起:
1、抽象类和接口区别
2、反射用途及实现
3、session与cookie区别
4、session分布式处理

5、MVC设计思想
6、池概念思想(包括:数据库和线程池的应用)
7、典型的设计模式
8、分库分表
9、常见的缓存(redis、jcs等)
10、消息(kafka、mq等)
11、编码安全
12、性能优化
13、需求分析、需求设计
14、文档编写
#程序员#
常见分布式事务解决方案
1、seata 阿里分布式事务框架
2、消息队列
3、saga
4、XA
他们有一个共同点,都是“两阶段(2PC)”。“两阶段”是指完成整个分布式事务,划分成两个步骤完成。实际上,这四种常见的分布式事务解决方案,分别对应着分布式事务的四种模式:AT、TCC、Saga、XA;四种分布式事务模式,都有各自的理论基础,分别在不同的时间被提出;每种模式都有它的适用场景,同样每个模式也都诞生有各自的代表产品;而这些代表产品,可能就是我们常见的(全局事务、基于可靠消息、最大努力通知、TCC)。

(AT、TCC、Saga、XA)模式分析
四种分布式事务模式,分别在不同的时间被提出,每种模式都有它的适用场景
AT 模式是无侵入的分布式事务解决方案,适用于不希望对业务进行改造的场景,几乎0学习成本。
TCC 模式是高性能分布式事务解决方案,适用于核心系统等对性能有很高要求的场景。
Saga 模式是长事务解决方案,适用于业务流程长且需要保证事务最终一致性的业务系统,Saga 模式一阶段就会提交本地事务,无锁,长流程情况下可以保证性能,多用于渠道层、集成层业务系统。事务参与者可能是其它公司的服务或者是遗留系统的服务,无法进行改造和提供
TCC 要求的接口,也可以使用 Saga 模式。
XA模式是分布式强一致性的解决方案,但性能低而使用较少。
总结
分布式事务本身就是一个技术难题,业务中具体使用哪种方案还是需要不同的业务特点自行选择,但是我们也会发现,分布式事务会大大的提高流程的复杂度,会带来很多额外的开销工作,「代码量上去了,业务复杂了,性能下跌了」。

所以,当我们真实开发的过程中,能不使用分布式事务就不使用。#Java面试题##java面试的时候你被提问过哪些问题##java专栏#
2022.03.09 自学Java进大厂,打卡第3天!
jvm已经学了3天了,还看了马士兵的jvm视频,开始有点感觉了,还是有用的,顺手整理了一张图,可能不太全,估计要是面试还得背几遍,貌似是拧螺丝必考题!
面试官竟然问我Java的AQS锁实现原理,幸亏我看了底层源码
一灯架构面试官竟然问我Java的AQS锁实现原理,幸亏我看了底层源码
面试官竟然问我Java的AQS锁实现原理,幸亏我看了底层源码

面试官竟然问我Java的AQS锁实现原理,幸亏我看了底层源码
今天又面试了一位JAVA开发工程师。他本科毕业两年,网络工程专业,基本功还算扎实。他很有礼貌,口头表达能力还行,整个面试过程氛围不错。
因为疫情和他本人在外地的原因,本次面试通过远程视频方式。小伙子1996年出生,面相略显稚嫩,但谈吐透露着成熟稳重,果然人不可貌相。
他在某某银行研发中心工作了一年多,主要负责核心系统的存款和外汇等模块。他可以有条理地讲出自己负责模块的业务知识,逻辑思维清晰,但对核心系统其它模块了解不多,而且使用的技术大多过时了,还在使用JDK1.6。不过,考虑到银行系统以稳定为主,可能10年都不会做大的升级改造,技术老旧也可以理解。

整个面试过程持续了40多分钟,我对他的个人信息、教育背景、项目经验、技术能力、解决问题能力和薪资要求等有基本的了解。经过慎重考虑,我决定让他进入下一轮面试,可能会成为同事,但是,他可能还有更好的选择。
今天上午面试了一个中级java工程师,因为在疫情期间嘛,都是线上面试。面试的过程中,虽然不是特别的好,但是感觉也还可以,是否让他通过,我还是有些犹豫,于是我准备拿一个工作中经常遇到的一个场景,来进一步考察考察他解决问题的思路和能力。
我:巴拉巴拉一大堆(此处略去一百字),这种问题你怎么解决?
他:不好意思,我刚刚信号不太好,没太听清,您能在说一遍吗?
我:现在可以听清了吗?
他:现在可以了。
我:又巴拉巴拉一大堆(此处在略去一百字),这种问题你怎么解决?

他:不好意思,我还是没太听清,您能在说一遍吗?
我:是你那边的信号不好吗?还是我说的太快了?
他:是我刚刚的信号不好,但是现在可以了?
我:又巴拉巴拉一大堆(此处在略去一百字),这种问题你怎么解决?
他:不好意思我还是没听清。
此时我的心态已经崩了,于是象征性的问了一个比较简单的问题,就草草的结束了。
其实出现这种问题的原因也不在他,可能就是信号不好,但是同一个问题,让我重复了三遍,而且题干还比较长,真的是把我的心态搞崩了,如果他前面的回答都特别的好,让我非常的满意,我还是非常愿意给他一个机会帮助他解决这个问题,比如我们都找一个信号好的地方沟通,比如我们在重新约个时间,都可以,但是他前面答的也不是特别好,那就别怪我了。
大家在遇到这种问题的时候会怎么做呢?欢迎评论区留言讨论[握手]

阿里菜鸟Java社招,29道面试题分享,困难难度,2年经验+:
1、先做了自我介绍,简单介绍一下之前做过的项目,用了什么技术,没有详细问项目的细节,但具体的功能和业务一定要讲清楚,中间穿插着会问到一些基础知识。
2、抽象类和接口你倾向用哪个?什么场景下用抽象类?
3、怎么实现自定义注解?如何动态加载类?
4、JVM垃圾回收,fullgc是否可以回收方法区?Java堆的内存结构?
5、在什么地方会发生OOM?让你自己实现OOM,你会怎么做?
6、fullgc的时候会导致接口的响应速度特别慢,如何排查和解决?
7、redis 是单线程了吗?有什么好处?
8、redis支持的数据类型?什么是跳跃表?
9、redis同步策略?如何自己实现lru?
10、一般设置过期时间吗,业务场景有哪些,过期策略有哪些?

11、redis分布式锁如何玩?超时时间如何设置?
12、Redis 集群,生产环境Redis 如何做数据迁移?
13、mysql索引的数据结构,为什么用B+树不用B树?索引值改变了,树的结构如何改变?
14、事务隔离级别?如何用可重复读的隔离级别避免幻读?
15、项目中如何实现的分库分表?
16、线程池的构造函数参数,队列的拒绝策略?
17、spring bean的生命周期?循环引用问题spring如何处理?
18、springAOP的原理,动态代理是怎么实现的?
19、concurrentHashmap1.8为什么放弃了分段锁?
20、zk的监听原理,你来实现你怎么做?主动推送怎么实现?
20、netty,如何避免的NIO空循环?零拷贝?
21、kafka的replicas的作用,为什么比其他的消息队列好?
22、微博评论长链接短链接的问题,让我设计一个服务来处理长链接短链接,怎么读怎么存?
23、http 协议转dubbo协议,怎么做的?dubbo的架构设计说一下?
24、mq 通知时,消费者没消费到怎么办?
25、哈希取模如何哈希?哈希冲突怎么办?能完全解决哈希冲突吗
26、微服务了解过吗,Service Mesh呢?
27、五亿数据,找出数量top100
28、10G数据,在内存小于10G如何分片?分布在多个节点上如何汇总?
29、三面着重点是项目设计上,来了两个面试官,简单的自我介绍后让我在白板上画最近负责的项目的流程图,期间经常问我为什么要这样设计?这样设计的好处是什么?有没有更好的设计方式?项目的数据量有多大?如果再增大100倍呢?碰到的真正的难题是什么?
#职场##程序员##职场干货##职场微头条##直言职场##有话职说#







