【一面】50min自我介绍关键 SQL 优化怎么优化的?为什么性能不好?主键必须有吗?数据索引密集度很差的话,你的优化意义不大吧?MySQL 有哪几种索引?聚簇索引和辅助索引的区别?索引数据结构?为什么用B+树?MVCC?版本号怎么变化的?更新的数据的时候怎么确定版本的?幻读怎么解决的?一个 SQL 怎么走的索引?MYSQL 会怎么选的?MySQL 哪些不正规的写法无法命中索引?MySQL 有哪几
JDK源码大家都 ,真正喜欢看源码的多半有点“变态”。这玩意催眠又晦涩难懂,看了也会忘,需要先一点点针对某个组件或者某部分去看,一口吃不成大胖子!就拿JDK源码来说,它是个类库,加入了很多辅助代码、泛型、以及一些设计模式上的考量,没有方法毫无头绪的去看没多会你就会晕头转向! 气。今天LZ就把前段时间阿里一位老哥私授我的JDK源码学习指南分享出来给大家,希望对大家有所帮助!这份JDK源码学习指南内
前言消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。虽然说,目前状况是Kafka更为火热,但更为广泛的应该还属老牌的RabbtiMQ和Alibaba自主研发的RocketMQ。关于MQ相关的内容,Alibaba肯定还是很有话语权的,尤其是关于RocketMQ的使用,所以今天我们要分享的内容,实际上
SpringBoot大家都知道SpringBoot拥有良好的基因,还能简化编码、配置、部署、监控,也是现在面试必问的一个点。Spring Boot设计目的就是用来简化新Spring应用的初始搭建以及开发过程。Spring从2002年发展至今,随着技术的发展,在SpringBoot没有推出之前用Spring开发和部署效率一直在不断降低,而SpringBoot开箱即用和约定优于配置两大特性就可以完美
1:jdk1.7 到 jdk1.8 Map 发生了什么变化(底层)?1.8 之后 hashMap 的数据结构发生了变化,从之前的单纯的数组+链表结构变成数组+链表+红黑树。也就是说在 JVM 存储 hashMap 的 K-V 时仅仅通过 key 来决定每一个 entry 的存储槽位(Node[]中的 index)。并且 Value 以链表的形式挂在到对应槽位上(1.8 以后如果 value长度大
前段时间有一位粉丝问了我这么一个问题,我没有高 项目经验,但是面试的时候经常被问到高并发、性能调优方面的问题,有什么办法可以解决吗?这题我必须回答一下!之前小编看了两份《高并发系统设计》和《Java性能调优》的资料,当时面试BAT,都被面试官说答得很好,思路非常正确。这两份的作者特别用心,不仅仅是整理好了问题,就连问题的答案也是很清楚地给到了大家。 第一份 高并发系统设计内容基础篇数据库篇缓存
前言如何提升系统性能,设计出一个靠谱的系统是每一个架构师或者正在往架构师方向进阶的同僚们都需要考虑的问题。公司所处的行业,业务场景决定了你设计的系统演进过程,不过万变不离其宗,系统设计和优化的思想都是相通的(当然如果你刚入行没多久,目前肯定还不需要苦恼这种问题,但是 如何设计一个高并发系统?这个问题想必有些出去面试的好兄弟肯定被问到过,现在公司招聘的需求也大都是:有高并发系统经验者优先。如果你没
灵魂一问,我们为什么要学习JDK源码?当然不是为了装,毕竟谁没事找事虐自己 ...1、面试跑不掉。现在只要面试Java相关的岗位,肯定或多或少会会涉及JDK源码相关的问题。2、弄懂原理才不慌。我们作为JDK的使用者,虽然说天天用得很开心,但是有时候遇到问题还是得跟到底层源码去看看,才能帮助我们更好的弄懂原理,3、学习优秀的代码、思想和模式。JDK毕竟是一个优秀的代码库,我们天天用,源码也就在里面
们 1.8 之后 hashMap 的数据结构发生了变化,从之前的单纯的数组+链表结构变成数组+链表+红黑树。也就是说在 JVM 存储 hashMap 的 K-V 时仅仅通过 key 来决定每一个 entry 的存 储槽位(Node[]中的 index)。并且 Value 以链表的形式挂在到对应槽位上(1.8 以后如果 value 长度大于 8 则转为红黑树)。但是 hashmap1.7 跟 1.
前两天看到字节一个老哥写的帖子,提到高阶开发者必须掌握的技能,其中他明确提出了“精通MySQL”。为啥MySQL对开发人员如此重要?第一,不管你去面试哪家公司,数据库是必问项,而MySQL使用范围广,无论如何是避不开的;第二,你对MySQL掌握的越深入,意味着你能做的事情越多。实现业务功能,要懂基本的SQL语句;性能优化,那么索引、引擎就要摸透;想分库分表,主从同步机制、读写分离你就得了解;安全
字节跳动,先面了data部门,3面技术面之后hr说需要实习转正,拒绝,之后另一个部门捞起,四面技术面,已oc 字节一面 时间:46分钟自我介绍(实习相关问题)mysql 介绍组合索引,如果确定组合索引多列的顺序,使查找更高效关系型数据库索引数据结构了解回表吗,回表一定会发生吗同步和异步异步有什么好处,有什么缺点一部分未记录。。。算法题:0001110110000是海洋,1是陆地,找出相连的陆地,
Spring Cloud Alibaba经历的这几年,每次的更新都会掀起更大的水花,就在近日进行了第五次的重大更新,除了修改、升级了一些内容之外,还有增加了很多细节的内容。在质上可以说是有了一个很大的飞跃!下面我们一起来学习一下第五次更新的Spring Cloud Alibaba更新的内容!章节目录部分内容概览自定义实现负载均衡全局过滤器顺序消息事务消息下单之后发送短信TCC事务 以下是往期部分
阿里面试常问技术有哪些数据结构,多线程,jvm,Spring,优化,消息框架,分布式,缓存等以及你使用过的框架且第一轮的基础很重要,通过会后录取可能性就相对高了!一面(主要是jvm,并发,锁,数据结构等基础)自我介绍(说说自己的擅长及拿手的技术)说说treemap和HashMap的区别?HashMap和ConcurrentHashMap的区别?HashMap底层如何实现(JDK1.8有所改动)?说
2021.9.7 快手一面 1. 自我介绍 2. 实习项目、背景、需求介绍 3. InnoDB优点 4. MyISAM索引底层是什么结构 5. B树和B+树区别 6. 为什么选择B+树不选择B树 7. MySQL如何支持事务 8. undo log如何保证原子性 9. MySQL隔离级别、存在的问题 10. MySQL如何解决脏读、
Spring SecuritySpring Security是Spring 家族中的一个安全管理框架,在SpringBoot还没有推出之前,相对于Shiro,在SSM/SSH中整合Spring Security是比较麻烦的操作,所以,Spring Security虽然功能比 Shiro强大,但是用反而没有Shiro 多(因为对于大部分项目而言,Shiro也够用)。但随着互联网项目需求更新,Spri
性能优化作为一个程序员,性能优化是常有的事情,不管你是刚入行的小白还是已经入坑了很久的小秃头都会经历很多不同层次的性能优化——小到代码审查大到整个系统设计的优化!大势所趋之下,如何让自己的优化方向精准到性能瓶颈的那个点以及尽可能的提高优化的性价比已经慢慢成为每一个程序员都要考虑的问题了~下面是目前程序员进行性能优化时需要遵循的一些原则以及注意的一些点,大家可以看看自己在进行优化的时候是否有考虑到这
投的是深圳今日头条---JAVA后端开发时间过去太久了!全靠回忆!基本上每面都是【自我介绍+基础八股+研究项目+实习+手撕代码】一面一个小时左右,二面一个半小时,三面一个半小时(真的是我面的所有公司里比较久的了)数据库1. MyISAM 和 InnoDB 比较;2. mysql都有哪些索引类型;为什么b+树,红黑树、b树为什么不好;3. mysql的主键,唯一索引区别,怎么建索引;4. 一条sql
一定不要放弃阅读源码“源码”这两个字想必大家一看到是有人爱有人恨。后者在于:费时费力还复杂太考验耐心!但优秀的源码中有着多年积淀下来的精华,可以说阅读源码小到对源码所提供的功能上的使用更加熟练,大到使我们的程序设计更加完美优秀。身为程序员的我们为了不被时代淘汰,为了在同级中脱颖而出,肯定是不能停止学习的!为什么我们就不能做到通读源码?让多数人的短处成为我们的长处!如何学?想要掌握阅读源码的方法,看
前言“面试造火箭,工作拧螺丝”这个现象想必已经不用我多说了!随着科技的不断发展,行业要求我们程序员这一群体在高性能、高并发的开发知识和技术这块也要有所建树,并且现在关于高并发的面试以前基本是BAT等大公司的专利,现在几乎蔓延至与Java项目相关的整个行业,简直抬升了Java工程师的学习台阶和面试门槛。必不可能!互联网行业本就是迭代非常快的行业,以前的分布式,高并发技术相关的面试题,已经从以前的加
Netty作为一个学Java的,如果没有研究过Netty,那么你只能算一个初等Java程序员。如果你想知道Nginx是怎么写出来的,如果你想知道Tomcat和Jetty是如何实现的,如果你想实现一个简单的Redis服务器,那都应该好好理解一下Netty,如果你要进阶,想了解Java服务器的深层高阶知识,Netty也绝对是一个必须要过的门槛。今天要与大家介绍的文档是我从腾讯一位老友手上得来的关于Ne
前言阿里巴巴,作为国内互联网公司的Top,算是业界的标杆,有阿里背景的程序员,也更具有权威性。作为程序员,都清楚阿里对于员工要求有多高,技术人员掌握的技术水平更是望尘莫及。所以,大厂程序员的很多经验也都值得我们借鉴和学习,在一定程度上确实能够帮助我们“走捷径”。今天,我们要分享的是,Alibaba技术官丢出来的SpringCloud微服务实战笔记,这份笔记让人看了不得不爱,目前在GitHub的热度
前言程序员,立之根本还是技术,一个程序员的好坏,虽然不能完全用技术强弱来判断,但是技术水平一定是基础,技术差的程序员只能CRUD,技术不深的程序员也成不了架构师。程序员对于技术的掌握,除了从了解-熟悉-熟练-精通的过程以外,还应该从基础出发,到进阶,到源码,到实战。所以,程序员想要成功,首先要成就自己。今天,这份Java全能笔记终于爆火了,看完之后我直接跪了!这份Java全能笔记内容齐全,包括以下
前言作为开发人员,对于Spring全家桶肯定是不陌生的,而来自于Spring大家族的Spring Boot,作为Spring团队提供的流行框架,它的存在解决的Spring框架使用较为繁琐的问题,所以掌握SpringBoot是精通Spring必不可少的一个过程。在面试过程中,SpringBoot的相关内容都会被面试官给问到,几乎一线互联网对于技术岗的任职要求都对Spring有一定的规定,所以学习Sp
前言关于技术人如何成长的问题,一直以来都备受关注,因为程序员职业发展很快,即使是相同起点的人,经过几年的工作或学习,会迅速拉开极大的差距,所以技术人保持学习,提升自己,才能够扛得住不断上赶的后浪,也不至于被“拍死”在沙滩上。近日,经过一朋友的透露,Alibaba也首发了一份限量的“Java成长笔记”,里面记载的知识点非常齐全,看完之后才知道,差距真的不止一点点!Java成长笔记主要是将Java程序
前言MySQL不用多说,大家都知道它是目前最为活跃热门的开源数据库,由于成本低,操作简易的特点,所以在互联网企业中被广泛使用,即使是头部的BATJ。由此可见,想要在互联网行业混得风生水起,或者说想要进入BATJ等一线互联网公司,那么熟练掌握MySQL必定是一块必要的敲门砖。对于MySQL的使用,可能很多刚开始工作的开发人员还是挺陌生的,但要想学习又不知道从何开始,技术的落后自然会让人感到焦虑。实际
作为Java开发者,面试肯定被问过多线程。对于它,大多数好兄弟面试前都是看看八股文背背面试题以为就OK了;殊不知现在的面试官都是针对一个点往深了问,你要是不懂其中原理,面试就挂了。可能你知道什么是进程什么是线程,但面试官要是问你进程之间是如何通讯的?ConcurrentHashMap 和 HashTable有什么区别?为什么wait和notify方法要在同步块代码中调用?你答不上来就只能等通知了。
Spring全家桶不知道各位Java好大哥们闲的时候会不会去关注Spring目前的官网,你会发现他的slogan是: Spring makes Java Simple。它让Java的开发变得更加简单。某种意义上来说:是Spring成就了Java!但随之而来的就是:由他之后诞生出来的各种组件;SpringBoot,SpringCloud,SpringSecurity啥的都成了我们Java程序员必须要
SpringBoot大家都知道SpringBoot拥有良好的基因,还能简化编码、配置、部署、监控,也是现在面试必问的一个点。Spring Boot设计目的就是用来简化新Spring应用的初始搭建以及开发过程。Spring从2002年发展至今,随着技术的发展,在SpringBoot没有推出之前用Spring开发和部署效率一直在不断降低,而SpringBoot开箱即用和约定优于配置两大特性就可以完美地
前言Alibaba作为一线互联网公司的代表,是大部分程序员梦寐以求的工作场所,确实大厂出来的程序员,其背景也更值钱,含金量也会更高。实际上,Alibaba程序员早已成为行业内学习的榜样和标杆,但实际上光鲜的背后付出的血汗是我们没看到的。那么阿里程序员平常都是怎么学习的呢?今天就讲讲让我们一众菜鸡惊艳到的“Java突击宝典”,这份宝典在Alibaba内部流行已久,适合各个年限的程序员来学习,它主要将
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号