程序员
文章平均质量分 86
我不想熬夜学Java
这个作者很懒,什么都没留下…
展开
-
面试官:MySQL的幻读是怎么被解决的?
我之前写过一篇数据库事务的文章「 [事务、事务隔离级别和MVCC],这篇我说过什么是幻读。在这里插入图片描述然后前几天有位读者跟我说,我这个幻读例子不是已经被「可重复读」隔离级别解决了吗?为什么还要有 next-key 呢?他有这个质疑,是因为他做了这个实验。实验的数据库表 t_stu 如下,其中 id 为主键。然后在可重复读隔离级别下,有两个事务的执行顺序如下:从这个实验结果可以看到,即使事务 B 中途插入了一条记录,事务 A 前后两次查询的结果集都是一样的,并没有出现所谓的幻读原创 2021-09-18 15:51:52 · 112 阅读 · 0 评论 -
吊打 ThreadLocal,谈谈FastThreadLocal为啥能这么快?
1 FastThreadLocal的引入背景和原理简介既然jdk已经有ThreadLocal,为何netty还要自己造个FastThreadLocal?FastThreadLocal快在哪里?这需要从jdk ThreadLocal的本身说起。如下图:在java线程中,每个线程都有一个ThreadLocalMap实例变量(如果不使用ThreadLocal,不会创建这个Map,一个线程第一次访问某个ThreadLocal变量时,才会创建)。该Map是使用线性探测的方式解决hash冲突的问题,如果没有找原创 2021-09-16 16:17:11 · 229 阅读 · 0 评论 -
字节跳动Java开发4面攻略:项目经验+“拍马屁”+扎实的技术
如标题所见,老陈现在已经顺利入职字节跳动。老陈在编程事业上摸爬滚打8年之久,有在58待过,有在腾讯地方事业部待过。很多人都说先在大厂镀金,再去小公司当老大,但老陈几乎就没有离开过大厂。身在大厂,扎根大厂在说字节跳动面试过程之前,先用几句话说一下老陈这几年身在大厂的感受。为什么叫大厂?就是因为它大呀,有钱呀!薪资和福利就不用细说了,这原本就是各位朋友想进大厂的根本诱因,大厂雄厚的资金实力,是支付你高额工资的资本,从另一方面来说,它也是开阔你眼界的一个因素。这里奉劝很多朋原创 2021-09-15 19:39:06 · 203 阅读 · 0 评论 -
首发10万字Mysql实战文档,几乎涵盖你需要的所有操作|超清PDF
MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用。非常流行的开源软件组合LAMP中的“M”指的就是MySQL。这份PDF真的是很全面了,几乎包括了MySQL中所有操作。以下是pdf的目录,由于目录过长,所以只截图一部分。第1部分:基础篇第2部分:开发篇第3部分:优化篇第4部分:管理维护篇内容展示篇幅有限,整个文档的内容太多太全了,需原创 2021-09-08 17:06:31 · 997 阅读 · 0 评论 -
本以为能躺着进华为,结果陆续收到京东/滴滴/爱奇艺offer的我迷茫了
背景菜鸡一枚,在实习期间面了广州的BIGO和唯品会,两家公司到HR面说不招22届的,然后就没找了。并且苏州华为离宿舍只有几站路,本来以为躺着都能进华为,结果今年苏州华为压根不怎么招见习生**(但是HR一直拖着,说走流程、马上开始、正在安排)**,拖到返校想着不能和华为继续拖下去了,重新审视了一次简历,发现项目上只有一个简单秒杀和一个CRUD的项目,然后花了大半个月做了两个项目,应对完接踵而来的考试。然后开始投简历找实习,此时大概是6月28号。到了7月份,朋友要么不实习或者早就有了offer,此时导师原创 2021-09-07 17:22:36 · 255 阅读 · 0 评论 -
数据库中间件:Mycat 权威指南+Mycat 实战笔记,双管齐下
阵子复习了一下消息中间件MQ系列的知识点,忽然想起还有个数据库中间件——MyCat!Mycat 是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。为了深入学习一下Mycat数据库中间件,我从朋友那里整了两个原创 2021-08-27 16:50:44 · 259 阅读 · 0 评论 -
二面阿里Java岗惨败,问的全是源码、Redis、中间件、Dubbo,整吐了
面试官把我问得晕头转向,很显然,阿里的二面还是挂了。还是老老实实的恶补原理吧。回来之后把这些题目做了一个分类并整理出答案(强迫症的我狂补知识)分为redis缓存,高并发,分布式,微服务,源码,并发等,接下来分享一下我的这阿里的面经+一些我的学习笔记。阿里关于Spring源码面试真题:什么事spring框架?spring框架有哪些主要模块?使用spring框架能带来哪些好处?什么是控制反转(IOC)?什么事依赖注入?请解释下spring框架中的IOC?BeanFactory和Applic...原创 2021-08-27 15:12:19 · 111 阅读 · 0 评论 -
毕业三年,坚持学习两年,成功上岸字节跳动,背水一战
前言正如标题所说,这是我进大厂的背水一战,这一战,不成功便成仁!同时,这也是我的逆袭之战!为什么这么说呢?因为我的个人工作经历确实已经达到极限(烂到极限)了,如果这次进不了大厂,以后基本就无缘了!为了实现这个目标,我坚持学习了两年。越努力越幸运,就在最近,我成功拿到了字节的offer,成功逆袭!接下来,将和大家分享下我坎坷职业生涯道路。文章末尾会附上面试题,记得查看哦一、坎坷的职业生涯我的学历非常普通,属于那种大厂学历门槛中最底层的级别(本科)。在刚毕业时,我的职业规划也非常的烂!是原创 2021-08-25 14:57:33 · 255 阅读 · 0 评论 -
理解SpingAOP
什么是AOP? AOP,即我们平时经常提到的面向切面编程。首先我们要理解一个叫**横切关注点(cross-cutting concern)**的概念,它其实是描述我们应用中的功能,假如有一个功能,它在应用程序中很多个地方都用了,那么我们把这样的功能称之为横切关注点。 日常开发中,我们都会将不同的业务场景抽象出对应的模块进行开发,而不同的模块,除了那些针对特定领域的核心功能外,还有一些相同的辅助功能,比如日志管理、安全管理、事务管理等等。横切关注点这个概念其实就点明了:类似这样的功能就是我原创 2021-08-25 13:51:04 · 139 阅读 · 0 评论 -
MySQL 到底是如何做到多版本并发的?
多版本并发控制我们知道,读未提交会造成脏读、幻读、不可重复读,读已提交会造成幻读、不可重复读,可重复读可能会有幻读,和串行化就不会有这些问题。那 InnoDB 到底是怎么解决这些问题的呢?又或者,你有没有想过造成脏读、幻读、不可重复读的底层最根本的原因是什么呢?这就是今天要聊的主角——MVCC(Multi-Version Concurrent Controll),也叫多版本并发控制。InnoDB 是一个支持多事务并发的存储引擎,它能让数据库中的读-写操作能够并发的进行,避免由于加锁原创 2021-08-02 15:26:12 · 116 阅读 · 0 评论 -
这波舒服了,落地多级缓存!
最近在有赞技术团队的博客上看到一篇关于多级缓存的文章,觉得非常的不错。其实这篇文章我很久之前就看过了,看完之后只是知道有这样的一个东西,但是也没有细细的思考研究。最近刚好关于热点数据探测这方面有一点自己的思考,再次读这篇文章的时候就感觉收获颇丰。大家都知道,分布式服务的三大利器就是:拆分、缓存、加钱。缓存的重要性不言而喻。而多级缓存对于不可预测的、慢热事件频发的系统的稳定性是一个强有力的保障。但是多级缓存解决方案的痛点也非常的明显比如:热点探测:如何快速且准确的发现热点访问key?原创 2021-07-30 14:12:07 · 283 阅读 · 0 评论 -
反杀套路!阿里独家的MySQL优化王者晋级之路,跟弯路说再见
随着互联网时代的兴起,MySQL在数据库领域日益显现出举足轻重的地位,它不断扩大的用户群体就是很好的证明。在这样的背景下,需要越来越多的人在知识资源方面为之付出,将自己对MySQL数据库的学习过程、运维经验、个人理解等记录下来,为行业中的后来者燃起一盏明灯, 让他们少走一些弯路。掌握并熟练使用MySQL的几点建议:建立完成的 MySQL 知识体系发挥MySQL的最佳性能的优化方法掌握如何处理海量业务数据和高并发请求能够轻松掌握那些晦涩难懂的知识,如主从复制、读写分离、事务与锁等。能够更加轻松地原创 2021-07-26 14:36:57 · 84 阅读 · 0 评论 -
“三顾字节”,九次面试,只要算法搞得好,大厂offer跑不了
先说说我与字节的那些事4.29 字节春招截止倒数第二天,杭州Java商业变现部门暑假实习,隔天挂,春招结束(人生的第一份简历,嗯就开始即结束6.15 字节提前批开始的前一天,杭州飞书日常实习部门,隔天挂,实习结束6.19 收到字节笔试邀请,才知道原来求职有【捞】这个操作,果断参加,迎来人生的第一次笔试 => 0ac(实在不会用Java的输入输出。。。),后来第二波笔试ac2.x6.29 收到了hr的电话通知面试通过开始约面试,于是长达半个月的三面开始与结束,最后三面挂了哈哈哈中间被北京鞭尸原创 2021-07-23 20:28:14 · 194 阅读 · 2 评论 -
朋友面试阿里云惨遭滑铁卢。幸获华为内推机会,四面喜提offer。
上个月,哥们从某小厂离职,转投阿里云,简历优秀,很顺利地拿到了面试通知,但之后的进展却让哥们怀疑人生了,或者说让哥们懵逼的是,面试阿里云居然第一面就被吊打?让哥们开始怀疑自己,是不是这些年工作下来,自己没有一丁点的进步呢?幸运的是,经过他朋友推荐,去面试了华为,面试华为的过程极为顺利,很快就拿到了offer。这让哥们更弄不懂了,4面拿华为offer的水平,面试阿里云居然一面就被吊打?索性,哥们想分享一下这次的面试经历,让各位老铁好好帮他参考参考,出一出主意!另外,我下文还整理了一些哥们的复习资料,有需原创 2021-07-22 21:18:34 · 210 阅读 · 0 评论 -
部门来了一位前阿里的Java大牛后,我才明白实际性能调优是要这样
最近跟一些粉丝交流,发现很多程序员对一些基础问题只停留在“听说过”或者“使用过”,没有深入到技术细节里。很多现成的技术非常容易上手,会让我们产生自己很“厉害”的错觉,但是却忽略了其底层原理。这个其实是很危险的,技术的高低和掌握程度决定了我们的工资以及是否会被公司“优化”。在我的上一家公司,系统研发部门曾经来了一位前阿里的大神。为什么叫他大神?因为他来公司一年,只做了一件事情——性能调优:把公司服务器的数量缩减到了原来的一半,结果系统的性能指标,反而还提升了很多!一个好的系统性能调优不但给公司省钱,还能原创 2021-07-21 21:27:12 · 164 阅读 · 0 评论 -
非科班,自学两年,复盘两个月,侥幸拿到头条、阿里offer
“lz”是非科班自学的java,毕业后进入卡中心,现在是2年开发经验。20年年初先后面了头条、拼多多和阿里(淘宝和支付宝),并成功拿到阿里和头条两家的offer。面试前我主要是不断的刷题且看了很多大牛的面经进行查漏补缺,所以面试完后也想记录下来,权当给大家提供点信息吧。(面试过了一周了,记忆也有点混乱,争取想到多少就记下来多少)。顺便提一下面试体验:头条 > 阿里 > pdd拼多多最垃圾的面试体验,没有之一。我约的视频面,结果面试官说有事给我打电话面,然后给我一个文档,是一个算法。我在写算原创 2021-07-21 21:07:21 · 367 阅读 · 0 评论 -
二面阿里Java岗惨败,问的全是源码、Redis、数据库、算法,顶不住了
面试官把我问得晕头转向,很显然,阿里的二面还是挂了。还是老老实实的恶补原理吧。回来之后把这些题目做了一个分类并整理出答案(强迫症的我狂补知识)分为redis缓存,高并发,分布式,微服务,源码,并发等,接下来分享一下我的这阿里的面经+一些我的学习笔记。阿里关于Spring源码面试真题:什么事spring框架?spring框架有哪些主要模块?使用spring框架能带来哪些好处?什么是控制反转(IOC)?什么事依赖注入?请解释下spring框架中的IOC?BeanFactory和Applic...原创 2021-07-20 20:43:07 · 79 阅读 · 0 评论 -
【完整面经含答案】华为校招+阿里巴巴社招,Java开发岗位
大家都知道,我是一个靠整理面试题存活的博主。今天收集到↓ ↓ ↓ ↓ ↓ ↓ ↓ 群友华为校招面试题一份 朋友阿里巴巴社招面试题一份华为校招软件开发工程师面经部门:云核心网产品线一天下午面完三轮,累的不行 原本一面约到两点,但是最后2点40多才开始一面:50min算法题:小于n的孪生素数对数介绍项目,问实现细节,说一下设计思路复盘笔试的题目,只是让简单介绍了一下当时做题的思路Java线程池相关的问题,很简单会不会docker(不会)中间间隔了大约两.原创 2021-07-14 15:18:52 · 294 阅读 · 4 评论