• avatar 牛客229127715号 2021-06-22 18:06:27

    实战!springcloud nacos 基于rocketmq 消息的分布式事务,刺激

    一、准备工作 1、整体流程图     基于事务消息分布式事物方案是 事务消息最终是分布式事务的最终一致性跟我之前写的分布式的seata的方案不太一样,比如a给b打钱,当a的钱扣除成功之后(扣除失败则本次失败),。 如果系统 B 的本地事务执行失败了咋办? 基于 mq 重试咯,mq 会自动

  • avatar 牛客229127715号 2021-06-22 18:06:48

    Tomcat源码:Tomcat如何接收请求你知道多少?只有10%的人完全懂

    创建过程 首先看一下Connector的创建过程。 Connector connector = new Connector(); public Connector() { //默认的连接器协议是nio的http 1.1协议 this("org.apache.coyote.

  • avatar 牛客229127715号 2021-06-22 18:07:10

    同事用策略模式把if else优化了,技术总监:能不能想好了再改?

    目前在魔都,贝壳找房是我的雇主,平时关注一些 java 领域相关的技术,希望你们能在这篇文章中找到些有用的东西。个人水平有限,如果文章有错误还请指出,在留言区一起交流。 我想大家肯定都或多或少的看过各种“策略模式”的讲解、布道等等,这篇文章就是来好好“澄清”一下策略模式,并尝试回答以下的问题:

  • avatar 牛客229127715号 2021-06-22 18:07:31

    高并发编程系列:全面剖析Java并发编程之AQS的核心实现

    在并发编程领域,AQS号称是并发同步组件的基石,很多并发同步组件都是基于AQS实现,所以想掌握好高并发编程,你需要掌握好AQS。 本篇主要通过对AQS的实现原理、数据模型、资源共享方式、获取锁的过程,让你对AQS的整体设计有清晰了解,让你迈出高并发编程的第一步。 AQS AQS(Abstrac

  • avatar 牛客229127715号 2021-06-22 18:07:53

    Dubbo与SpringCloud核心组件Ribbon、Hystrix、Feign的优劣势比较

    在微服务架构中,分布式通信、分布式事务、分布式锁等问题是亟待解决的几个重要问题。 Spring Cloud是一套完整的微服务解决方案,基于 Spring Boot 框架。确切的说,Spring Cloud是一个大容器(而不是一个框架),它可以将通过集成一些好的微服务框架,从而简化开发者的代码量。

  • avatar 牛客229127715号 2021-06-22 18:08:15

    高并发编程系列:ReentrantReadWriteLock的实现原理与锁获取详解

    引言 大家都知道 Synchronized 和 ReentrantLock 都是独占锁,即在同一时刻只有一个线程获取到锁。 然而在有些业务场景中,我们大多在读取数据,很少写入数据,这种情况下,如果仍使用独占锁,效率将及其低下。 针对这种情况,Java提供了读写锁——ReentrantReadW

  • avatar 牛客229127715号 2021-06-22 18:08:38

    阿里架构师:详解Dubbo的核心功能、架构思路、应用场景等

    Dubbo是阿里开源的一个优秀的高性能服务框架。 它的最大特点是按照分层方式进行架构,能让各个层之间解耦合,或最大限度地松耦合,应用通过高性能的RPC,来实现服务提供方的输出,以及服务消费方的输入功能。 看完本篇,将获得以下知识: Dubbo是什么 Dubbo的核心功能 Dubbo的架

  • avatar 牛客229127715号 2021-06-22 18:08:59

    程序员:你有过面对代码引发的恐惧吗?

    一 我工作的前5年,都是从事基础系统研发相关的工作。做过后台的接入层,后台的存储系统,RPC框架。说来不怕你笑话,那个时期里面,我对代码一直有一种恐惧感。这种恐惧是怎么来的呢?且让我慢慢说来。 我们所构建的基础系统,都是使用在亿级甚至十亿级用户产品的业务系统之上的。从客户端(前端)到后台业务逻辑

  • avatar 牛客229127715号 2021-06-22 18:09:19

    Java并发编程:线程池的使用「建议收藏」

    我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁

  • avatar 牛客229127715号 2021-06-22 18:09:40

    java堆、栈、堆栈,常量池的区别,史上最全总结

    先说一下栈和堆栈,我们听老一辈的程序员一般都会说堆栈,其实栈就是堆栈的意思,连着叫只是由于历史的原因。博主04年学数据结构的时候,书上都是说的堆栈,FILO(先进后出),也经常拿堆栈和队列,FIFO(先进先出)这两种数据结构拿来作比较。 系统中的堆、栈 和 数据结构堆、栈 系统中的堆、栈和数

  • avatar 牛客229127715号 2021-06-22 18:10:01

    最近面试 Java 后端开发的感受

    在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面的。我也知道,不少候选人能力其实不差,但面试时没准备或不会说,这样的人可能在进团队干活后确实能达到期

  • avatar 牛客229127715号 2021-06-22 18:10:26

    完整详解阿里Java P5-P8百万年薪架构师的技能要求!

    最近很多同学给我留言:关于阿里的Java P系列薪资与技能的问题,本篇统一解答大家的疑惑。 先晒一个大家最关心的薪资结构,最新的薪资结构,个人建议翻倍参考。 薪资确实比较诱惑人啊,但问题的关键是: 自己的能力是否能匹配这个薪资呢? 对应岗位的技能要求是怎样的呢? 需要重点准备哪些面

  • avatar 牛客229127715号 2021-06-22 18:10:46

    最全二叉树:完整详解二叉树的遍历以及完全二叉树等6种二叉树

    树在数据结构中占据了非常重要的位置,尤其是二叉树。经常是在java面试中必问的一个环节,而且二叉树的应用场景真的非常普遍,需要重点掌握好。 但是一直以来,很多同学对于二叉树的掌握都是不太全面。今天我就来谈谈二叉树,希望你喜欢这个Java数据结构与算法这个专题,认真看完后你会对二叉树会有一个比较完整

  • avatar 牛客229127715号 2021-06-22 18:11:12

    工作10年,面试超过500人想进阿里的同学,总结出的115面试题

    很多同学想进大厂,特别是刚毕业的,以及工作年限短的,不要有任何侥幸心理,踏踏实实的把基础弄扎实了,这是你通往高薪之路的唯一正确姿势。 为了帮助更多同学进大厂,首先从面试题做起~ 好了,不多说了,直接上正菜。 01 Mysql 1. 数据库三范式及判断、E-R图 2. innodb和myis

  • avatar 牛客229127715号 2021-06-22 18:11:33

    MongoDB 事务,复制和分片的关系

    1.前言 MongoDB基于wiredTiger提供的泛化SI的功能,重构了readHistory(readMajority)的能力 基于wiredTiger提供的AllCommittedTimestamp API,重构了前缀一致的主从复制(Prefix-Consistent-Replica

  • avatar 牛客229127715号 2021-06-22 18:11:55

    高并发系统三大利器之——缓存

    引言 随着互联网的高速发展,市面上也出现了越来越多的网站和app。我们判断一个软件是否好用,用户体验就是一个重要的衡量标准。比如说我们经常用的微信,打开一个页面要十几秒,发个语音要几分钟对方才能收到。相信这样的软件大家肯定是都不愿意用的。软件要做到用户体验好,响应速度快,缓存就是必不可少的一个神器

  • avatar 牛客229127715号 2021-06-22 18:12:16

    牛掰!一次线上商城系统高并发优化实战

    对于线上系统调优,它本身是个技术活,不仅需要很强的技术实战能力,很强的问题定位,问题识别,问题排查能力,还需要很丰富的调优能力。   本篇文章站在实战角度,从问题识别,问题定位,问题分析,提出解决方案,实施解决方案,监控调优后的解决方案和调优后的观察等角度来与大家交流分享线上高并发调优整个闭

  • avatar 牛客229127715号 2021-06-22 18:12:42

    我对响应式编程中Mono和Flux的理解

    1. 前言 很多同学反映对响应式编程中的Flux和Mono这两个Reactor中的概念有点懵逼。但是目前Java响应式编程中我们对这两个对象的接触又最多,诸如Spring WebFlux、RSocket、R2DBC。我开始也对这两个对象头疼,所以今天我们就简单来探讨一下它们。   2. 响

  • avatar 牛客229127715号 2021-06-22 18:13:03

    云原生下,如何实现高可用的MySQL?

      前言 MySQL 作为当前比较受欢迎的关系型数据库(RDS),在云原生浪潮中仍然面临诸多挑战。如何用 Cloud Native 的设计原则,通过沙箱隔离、计算和数据的完全分离,实现低成本、可扩展、高可用的 Cloud RDS 方案?阿里云数据库团队的姜杉彪(孟宇)同学将介绍一种云原生分布式

  • avatar 牛客229127715号 2021-06-22 18:13:52

    链表的分类+使用java实现链表+链表源码详解

    什么是链表? 链表是一种物理存储单元上非连续,非顺序的存储结构,数据元素的逻辑顺序是通过链表的链接次序实现的一系列节点组成,节点可以在运行时动态生成,每个节点包括两个部分,一个是村粗数据元素的数据域,一个是存储指针的指针域,相比于线性表顺序结构,操作复杂。由于不必须按照顺序存储,链表在插入的时候可

  • avatar 牛客229127715号 2021-06-22 18:14:15

    烂了大街的 Spring 循环依赖问题,你以为自己就真会了吗

    前言 循环依赖问题,算是一道烂大街的面试题了,解毒之前,我们先来回顾两个知识点: 初学 Spring 的时候,我们就知道 IOC,控制反转么,它将原本在程序中手动创建对象的控制权,交由 Spring 框架来管理,不需要我们手动去各种 new XXX。 尽管是 Spring 管理,不也得创建对象

  • avatar 牛客229127715号 2021-06-22 18:14:37

    HashMap 熟悉吧?好的,那就来聊聊 Redis 字典吧

    最近,阿粉的一个朋友出去面试,回来跟阿粉抱怨,面试官不按套路出牌,直接打乱了他的节奏。 事情是这样的,前面面试问了几个 Java 的相关问题,我朋友回答还不错,接下来面试官就问了一句:看来 Java 基础还不错,Java HashMap 你熟悉吧? 我朋友回答。工作经常用,有看过源码。 我朋友

  • avatar 牛客229127715号 2021-06-22 18:15:00

    面试官:微服务下数据一致性的有几种实现方式,分别说一下

    本人最近学习了一下微服务下数据一致性的特点,总结了下目前的保障微服务下数据一致性的几种实现方式如下,以备后查。此篇文章旨在给大家一个基于微服务的数据一致性实现的大概介绍,并未深入展开,具体的实现方式本人也在继续学习中,如有错误,欢迎大家拍砖。 传统应用的事务管理 本地事务 在介绍微服务下的数据

  • avatar 牛客229127715号 2021-06-22 18:15:23

    微服务的战争:统一且标准化

    “微服务的战争” 是一个关于微服务设计思考的系列题材,主要是针对在微服务化后所出现的一些矛盾/冲突点,不涉及具体某一个知识点深入。如果你有任何问题或建议,欢迎随时交流。   开天辟地 在远古开天辟地时,大单体转换成微服务化后,服务的数量越来越多。每起一个新的服务,就得把项目的目录结构,

  • avatar 牛客229127715号 2021-06-22 18:15:44

    两个月新增 80 万行代码,Linux 内核为什么不会崩?

    8 月初,当 Linux 5.8 RC 版本开放测试时,大多数的新闻都聚焦于它的大小,称其为“史上最大的内核版本”。正如 Linus Torvalds 本人指出的那样,“尽管没有任何一件事情能脱颖而出……但 5.8 似乎是我们有史以来最大的发行版之一。”   确实,刚刚发布的 Linux 内

  • avatar 牛客229127715号 2021-06-22 18:16:06

    深入k8s:任务调用Job与CronJob及源码分析

    在使用job中,我会结合源码进行一定的讲解,我们也可以从源码中一窥究竟,一些细节k8s是如何处理的,从而感受k8s的魅力。源码版本是1.19   Job Job的基本使用 Job主要是用来任务调用,可以一个或多个 Pod,并确保指定数量的 Pod 可以成功执行到进程正常结束。 创建一个

  • avatar 清峰nm 2021-06-22 18:16:19

    题解 | #斐波那契数列#

    package 剑指offer; public class J27斐波那契数列 { public static void main(String[] args) { System.out.println(Fibonacci(4)); } public static int

    来自 清峰nm
    10
  • avatar 牛客229127715号 2021-06-22 18:16:27

    删库时,我后悔没早学会的数据库知识

    曾经有一份真挚的数据库知识摆在我的面前,我没有珍惜,等到删库时才后悔莫及。人世间最悲痛的事莫过于此。如果再给我一次重来的机会,我一定会好好读这篇文章,并把它收藏、分享给有需要的人。 大多数计算机系统都是有状态的,并且可能会依赖存储系统。随着时间的推移,我对数据库的了解程度不断加深,这是以我们的设计

  • avatar 牛客229127715号 2021-06-22 18:16:52

    2020应届生进大厂必备知识:算法+多线程与高并发+JVM

    2020年对于很多人来说都是异常难过的一年,疫情影响下,很多企业倒闭、裁员,再加上金三银四的延后,找工作的人太多,很多人能拿到一份之前的工资都异常的艰难! 金九银四原本是应届生找工作的黄金时间段,本来应届生人就很多,再加上疫情影响被裁掉的、企业倒闭被迫离职的等等,找工作会相当困难 ps:这

  • avatar 牛客229127715号 2021-06-22 18:17:16

    用过 mongodb 吧,这三个大坑踩过吗?

    背景 讲故事 前段时间有位朋友在微信群问,在向 mongodb 中插入的时间为啥取出来的时候少了 8 个小时,8 在时间处理上是一个非常敏感的数字,又吉利又是一个普适的话题,后来我想想初次使用 mongodb 的朋友一定还会遇到各种新坑,比如说: 插入的数据取不出来,看不爽的 ObjectID,

  • avatar 牛客229127715号 2021-06-22 18:17:39

    为什么 CPU 访问硬盘很慢

    硬盘 机械硬盘(Hard Disk Drive、HDD)和固态硬盘(Solid State Drive、SSD)是两种最常见的硬盘,作为计算机的外部存储,CPU 想要访问它们存储的数据需要很长时间,如下表所示,在 SSD 中随机访问 4KB 数据所需要的时间是访问主存的 1,500 倍,机械磁盘的

  • avatar 牛客229127715号 2021-06-22 18:18:00

    重温一下ZooKeeper关键点,虽然我不是很喜欢它

    个人是非常不喜欢这个组件的,因为它的代码虐过我。引入一个Netty就可以轻易实现的网络功能,非要自己在代码里抠 NIO,代码让人看的云里雾里。 另外,Zookeeper的扩容和缩容,也曾经让我的团队吃过亏,丢了不少数据。用不好的东西,对它印象就不好,所幸它老了,我也很少用它了。 关于它的客户端使

  • avatar 牛客229127715号 2021-06-22 18:18:21

    Kubernetes架构设计与核心组件工作流

    Kubernetes Kubernetes是谷歌开源的容器编排引擎,架构和设计思想来源于谷歌内部使用调度工具——Borg。Borg是谷歌一个久负盛名的的内部使用的大规模集群管理系统,它基于Linux Container(LXC)技术,提供了面向应用的容器集群部署和管理系统。 Kubernetes

  • avatar 牛客229127715号 2021-06-22 18:18:43

    天天在用Stream,那你知道如此强大的Stream的实现原理吗?

    我们已经学会如何使用Stream API,用起来真的很爽,但简洁的方法下面似乎隐藏着无尽的秘密,如此强大的API是如何实现的呢? 比如Pipeline是怎么执行的,每次方法调用都会导致一次迭代吗?自动并行又是怎么做到的,线程个数是多少?本节我们学习Stream流水线的原理,这是Stream实现的关

  • avatar 牛客229127715号 2021-06-22 18:19:04

    入职两周,怀疑进了假百度!工作强度超过字节,跳槽字节养老

    有个新入职的百度员工发帖称:怀疑自己进了假百度 因为他天天加班到半夜,和外面传说的“百度不加班”根本不一样,才干了两个礼拜,他已经开始怀疑人生了。   网友们乐了,小伙子挺有想象力,可惜现实很残酷,这个百度不是假的。加班+钱少,就是货真价实、如假包换的真百度。   一位前百度员工跳

  • avatar 牛客229127715号 2021-06-22 18:19:25

    面试官:Java中什么情况会导致内存泄漏呢?

      概念 内存泄露:指程序中动态分配内存给一些临时对象,但对象不会被GC回收,它始终占用内存,被分配的对象可达但已无用。即无用对象持续占有内存或无用对象的内存得不到及时释放,从而造成的内存空间浪费。 可达性分析算法 JVM使用可达性分析算法判断对象是否存活。 GC Root 通过一系列名

  • avatar 牛客229127715号 2021-06-22 18:19:49

    关于线程池的五种实现方式,七大参数,四种拒绝策略

    1 池化技术之线程池 什么是池化技术?简单来说就是优化资源的使用,我准备好了一些资源,有人要用就到我这里拿,用完了就还给我。而一个比较重要的的实现就是线程池。那么线程池用到了池化技术有什么好处呢? 降低资源的消耗 提高响应的速度 方便管理 也就是 线程复用、可以控制最大并发数、管理线

  • avatar NumPy 2021-06-22 18:20:01

    题解 | #数字在升序数组中出现的次数#

    一、题目描述 JZ37数字在升序数组中出现的次数题目大意:找到指定数字在升序数组中出现的次数注意审题:升序数组 二、算法1(暴力遍历) 算法思路 1.总体思路:直接遍历一次数组,当遇到指定数字时计数即可2.这种方法虽然直观,但是并没有用上题目中提供的升序这一信息,因此一般不是最优解 代码实现(C++

    来自 NumPy
    00
  • avatar 牛客229127715号 2021-06-22 18:20:12

    学习Java不懂Spring怎么行?看看阿里大佬整理的Spring学习指南

    spring是什么? 要谈Spring的历史,就要先谈J2EE。J2EE应用程序的广泛实现是在1999年和2000年开始的,它的出现带来了诸如事务管理之类的核心中间层概念的标准化,但是在实践中并没有获得绝对的成功,因为开发效率,开发难度和实际的性能都令人失望。 Spring的一个最大的目的就是使

  • avatar 牛客229127715号 2021-06-22 18:20:38

    面试官:你说你精通源码,那你知道ArrayList 源码的设计思路吗?

    Arraylist源码分析 ArrayList 我们几乎每天都会使用到,但是通常情况下我们只是知道如何去使用,至于其内部是怎么实现的我们不关心,但是有些时候面试官就喜欢问与ArrayList 的源码相关的问题,今天我们就来看看和ArrayList 源码相关的问题。 一:整体架构 1.1、Arr

  • avatar 牛客229127715号 2021-06-22 18:21:00

    亿级流量分布式系统核心架构设计——Spring Cloud微服务

    为什么选择Spring Cloud? Spring Cloud为开发人员提供了于快速构建分布式系统中某些常见模式的工具(例如,配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调产生了样板模式,并且使用Spring云开发人员可以快速支持实现这些模式的服务和应用程序。它们可以在

  • avatar 牛客229127715号 2021-06-22 18:21:33

    面试官:你说你精通源码,那你知道ArrayList 源码的设计思路吗?

    Arraylist源码分析 ArrayList 我们几乎每天都会使用到,但是通常情况下我们只是知道如何去使用,至于其内部是怎么实现的我们不关心,但是有些时候面试官就喜欢问与ArrayList 的源码相关的问题,今天我们就来看看和ArrayList 源码相关的问题。 一:整体架构 1.1、Arr

  • avatar 牛客229127715号 2021-06-22 18:21:54

    这13道面试常问Redis面试题,你能答对几道?

      1、Redis支持的数据类型? String(字符串) 格式: set key value string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个键最大能存储512MB。

  • avatar 牛客229127715号 2021-06-22 18:22:15

    开发三年,面试阿里被难倒了,竟是因为这5个“简单”的面试题

    今日一问:你什么时候发现自己技术弱到爆? 没错,就是面试的时候。   最近一个同事去面试阿里了,其中几个他印象深刻的面试题你们品品: 1、介绍下如何对MySQL SQL语句进行分析和优化? 2、Redis 怎样实现的分布式锁? 3、如何实现本地缓存和分布式缓存? 4、说

  • avatar 牛客229127715号 2021-06-22 18:22:40

    每天两小时学多线程、高并发、分布式、Redis,拿到腾讯T3 offer

    今日一问:你什么时候发现自己技术弱到爆? 没错,就是面试的时候。 昨天一位同学和我说,他工作了3年,特别有信心去面字节跳动的,但没有想到这么抠细节,太难了: 什么是分布式锁? 如何实现分布式锁? 单机锁有哪些?它为什么不能在分布式环境下使用? Redis 是如何实现分布式锁?可能会遇到什

  • avatar 牛客229127715号 2021-06-22 18:23:15

    不畏加班,不念下班,这样的奋斗逼文化你见过吗?

    下班回家的时候刷到这样一条帖子: 网友投稿,海淀某互联网公司,都是不996了,要求"不畏加班,不念下班”,鼓励尽量住在公司,从起床工作到睡觉。。。这样的公司你怎么看?   我的天,这还得了?996是没了,脱变成真正的007了 ,这样的话想干点啥是不是都不方便(惊悚!) 看看下面

  • avatar 牛客229127715号 2021-06-22 18:23:40

    面试官:java8中parallelStream提升数倍查询效率是怎样实现的

    业务场景 在很多项目中,都有类似数据汇总的业务场景,查询今日注册会员数,在线会员数,订单总金额,支出总金额等。。。这些业务通常都不是存在同一张表中,我们需要依次查询出来然后封装成所需要的对象返回给前端。那么在此过程中,就可以把这个接口中“大任务”拆分成N个小任务,异步执行这些小任务,等到最后一个小

  • avatar 牛客229127715号 2021-06-22 18:24:01

    因为Redis这个漏洞,我可怜的服务器被挖矿病毒偷袭了

    原文作者:「烟雨星空」 原文地址:https://www.cnblogs.com/starry-skys/p/13332666.html 前言 服务器好端端的竟然中了挖矿病毒!!! 可怜我那 1 核 2 G 的服务器,又弱又小,却还免除不了被拉去当矿工的命运,实在是惨啊惨。 事情原来

  • avatar 牛客229127715号 2021-06-22 18:24:24

    女程序员梦见男朋友和别的女人在逛街,竟然这么做

      一个女程序员在twitter上发了一条tweet: 昨晚梦见男朋友和别的女人在逛街,梦里我的第一反应是查源代码…结果调试半天查不出来为什么显示的是那个女人不是我,最后含泪把那个女人给注释掉了,再一运行就是我男朋友自己逛街了…醒来囧字脸呆了很久…囧rz   评论: 1楼 把那个女人的

  • avatar 牛客229127715号 2021-06-22 18:24:45

    Java程序员需要什么学历才能找到工作?学历低怎么办?

    前言 在这个拥有14亿人口的中国,高学历的人有很多,低学历的人也有很多,就和中国存在的问题一样:贫困差距。高学历的人学习能力强,学习IT互联网行业里的东西不是什么难事,而且学历高相对低学历的人来说是很好找工作的。 很多人应该都听说过一句话:学历代表不了什么,只要技术好,小学学历也可以 很多人在

  • avatar 牛客229127715号 2021-06-22 18:25:09

    腾讯T4:结合我多年工作经验给程序员的几点忠告,别再埋头苦干了

    前言 恍然间,发现自己在这个行业里已经摸爬滚打了十年了,思绪良多,感慨万千,我的事就不多说了 直接开门见山吧!今天这篇文章主要是给程序员的几个忠告。很多刚刚入行的程序员一入职就开始埋头写程序,敲代码,希望自己的勤奋工作能够得到上司的赏识,然后得以升职加薪,这样想你就错了!这样只会让你变成一个码农

  • avatar 牛客229127715号 2021-06-22 18:25:33

    四年开发剑指阿里,复习耗时108天,四面阿里巴巴,定级P7

    前言 相信程序员们对互联网一线大厂并不陌生,每一个程序员都有一个大厂梦,都想努力提升自己,跻身大厂之中,不仅仅是追求薪资,更重要的是增加自己的项目经验,让自己的履历更加丰富,让自己变得更有价值。 互联网大厂最吃香的首当其冲自然是阿里巴巴了 ,今天小编就来分享一个小伙进阿里巴巴的面经! 就

  • avatar 牛客229127715号 2021-06-22 18:25:57

    面试阿里,腾讯,字节跳动90%都会被问到的Spring中的循环依赖

    前言 Spring中的循环依赖一直是Spring中一个很重要的话题,一方面是因为源码中为了解决循环依赖做了很多处理,另外一方面是因为面试的时候,如果问到Spring中比较高阶的问题,那么循环依赖必定逃不掉。如果你回答得好,那么这就是你的必杀技,反正,那就是面试官的必杀技,这也是取这个标题的原因,当

  • avatar 牛客229127715号 2021-06-22 18:26:22

    面试官:Redis 为什么这么快?除了基于内存操作还有其他原因吗?

    前言 曾经有人这么告诉我:“在理想状态下,我们的页面跳转需要在瞬间解决,对于页内操作则需要在刹那间解决。另外,超过一弹指的耗时操作要有进度提示,并且可以随时中止或取消,这样才能给用户最好的体验。” 那么瞬间、刹那、一弹指具体是多少时间呢? 根据《摩诃僧祗律》记载: 一刹那者为一念,二十

  • avatar 牛客229127715号 2021-06-22 18:26:43

    时隔两年,GitHub竟然又挂了,程序员的崩溃只在一瞬间

    前言 说到GitHub,不得不提一下18年的事,18年10月22号,GitHub曾意外宕机,官方表示:数据存储系统是本次故障的元凶   2020年7月13日,时隔两年,GitHub竟然再次出现严重宕机,这次事件让人们对单单在2020年4月发生三起单独故障后GitHub的可靠性提出了新的疑问

  • avatar 牛客229127715号 2021-06-22 18:27:05

    震惊!女程序员梦见男朋友和别的女人在逛街,竟然这么做

      一个女程序员在twitter上发了一条tweet: 昨晚梦见男朋友和别的女人在逛街,梦里我的第一反应是查源代码…结果调试半天查不出来为什么显示的是那个女人不是我,最后含泪把那个女人给注释掉了,再一运行就是我男朋友自己逛街了…醒来囧字脸呆了很久…囧rz   评论: 1楼 把那个女人的

  • avatar 牛客229127715号 2021-06-22 18:27:27

    面试官:你来讲讲一条查询语句的具体执行过程

    前言 对于一个开发工程师来说,了解一下 MySQL 是如何执行一条查询语句的,是一件很有必要的事情,不仅对于工作上有帮助,面试的时候还不至于被面试官问倒! 下面我们来看看MySQL执行一条查询语句的具体过程吧 一条看似非常简单的查询语句: select * from T where id=1

  • avatar 牛客229127715号 2021-06-22 18:27:49

    面试官:说说单例模式!利用这个方法,我成功套路的面试官

    前言 在面试的时候面试官会怎么在单例模式中提问呢?你又该如何回答呢?可能你在面试的时候你会碰到这些问题: 为什么说饿汉式单例天生就是线程安全的? 传统的懒汉式单例为什么是非线程安全的? 怎么修改传统的懒汉式单例,使其线程变得安全? 线程安全的单例的实现还有哪些,怎么实现? 双重检查模

  • avatar 牛客229127715号 2021-06-22 18:28:10

    面试官:Redis过期后key是怎么样清理的?

    前言 笔者一个同事面试某大厂时被问到的一个问题,这里拿来讲讲:Redis过期后key是怎么样清理的? 在Redis中,对于过期key的清理主要有惰性清除,定时清理,内存不够时清理三种方法,下面我们就来具体看看这三种清理方法。 惰性清除 在访问key时,如果发现key已经过期,那么会将key删

  • avatar 牛客229127715号 2021-06-22 18:28:31

    学会阅读源码后,我觉得自己better了

    前言 我有一个大学同学,我们俩合作过很多项目。只要有他在,我就特别放心,因为几乎所有难搞的问题,到他这,都能够巧妙地化解。他给我印象最深刻的一句话就是,“有啥解决不了的?只要你肯阅读源码。”   什么人适合阅读源码? 说起来源码,我是不太建议新手去阅读,容易劝退。不信,你让一个小学生去读

  • avatar 牛客229127715号 2021-06-22 18:28:58

    阿里java开发三年程序员:不吹牛X,我轻松干掉了if-else

    前言 虽然 if else 是必须的,但滥用 if else 会对代码的可读性、可维护性造成很大伤害,进而危害到整个软件系统。 现在软件开发领域出现了很多新技术、新概念,但 if...else 这种基本的程序形式并没有发生太大变化。 使用好 if else 不仅对于现在,而且对于将来,都是十分

  • avatar 牛客229127715号 2021-06-22 18:29:42

    数据库性能优化之冗余字段的作用

    前言 按照第三范式的要求,是不应该存在冗余字段的,但有时候冗余字段可以提高性能,是可以使用的。 什么是冗余字段? 在设计数据库时,某一字段属于一个表,但它又同时出现在另一个或多个表,且完全等同于它在其本来所属表的意义表示,那么这个字段就是一个冗余字段。 加深理解 在设计数据库的时候,应该注

  • avatar 牛客229127715号 2021-06-22 18:30:05

    面试官:你对Kafka比较熟?那说说kafka日志段如何读写的吧?

    前言 之所以写这篇文章是因为之前有朋友面试时候被面试官问到(倒)了,面试官说:“你说你对Kafka比较熟?看过源码? 那说说kafka日志段如何读写的吧?” 今天我们就来看看源码层面来Kafka日志段的是如何读写的。 Kafka的存储结构 众所周知,Kafka的Topic可以有多个分区,分区

  • avatar 牛客229127715号 2021-06-22 18:30:27

    Linux内核维护者难寻!当Linus等人老去时,Linux将走向何方?

    前言 在本周召开的线上开源峰会与嵌入式 Linux 大会上,Linux 缔造者 Linus Torvalds 谈到了为开源操作系统寻找未来维护者时的种种挑战。Linus 近年来已经不再发表主题演讲,但这一次他与 VMware 公司首席开源官 Dirk Hohndel 展开了远程对话。 这次讨论很

  • avatar 牛客229127715号 2021-06-22 18:30:49

    为什么美国程序员就可以到点下班,中国程序员就要主动无偿加班?

    前言 按惯例,先问是不是,再问为什么。   从知乎回答浏览量看,是的。 那么为什么美国程序员就可以到点下班回家,而中国程序员就要每天“主动”、“无偿”加班呢? 仔细看了群众们热情的回答之后,大概可以分为几派: 1、产品经理不够通情达理,导致效率低下 2、表演性加班,太早回家会被认为

  • avatar 牛客229127715号 2021-06-22 18:31:12

    Redis作者辞去Redis项目的领导者和维护者职务,对此你怎么看?

    Redis作者从Redis项目辞职? 昨日,也就是6月30。Redis 作者 antirez 在博客公布了从 Redis 项目辞职的消息,将不再担任 Redis 项目的领导者和维护者。antirez 选择将 Redis 交给 Redis 社区打理,并邀请到了两位同事 Yossi Gottlieb

  • avatar 牛客229127715号 2021-06-22 18:31:33

    985毕业,土木工程工作两年后转行java,摸爬滚打三年目前年薪40K

    背景 26岁985研究生毕业,学的土木工程相关的专业。工作半年,存款3000,半年后调到深圳总部(公司央企),工作一年差不多也就几万存款,感觉生活无望,就直接决定转行。说实在的,转行就是奔着挣钱去的。最开始想到的是金融,入坑了后,发现原来还有金融农民工一说,二成人暴富,八成人shishi……万念俱

  • avatar 牛客861977652号 2021-06-22 18:31:57

    JavaWeb Servlet

    Servlet servlet = server+applet运行在服务器端的java程序servlet是一个接口,一个类如果想通过服务器访问到,那么这个类就必须直接间接的实现Servlet接口作用是:接受请求,处理逻辑,响应结果 快速开始 定义类实现Servlet接口,并重写该Servlet接

  • avatar 牛客229127715号 2021-06-22 18:31:59

    使用微服务的最佳实践:编写、测试、保护和部署微服务(PDF)

    内容提要 近些年来,微服务一直是非常热门的话题,关于微服务架构的讨论也是层出不穷。本书以贯穿整书的示例为出发点,由浅入深地阐述使用微服务的最佳实践,以及如何避免采用微服务架构可能带来的复杂性陷阱。本书从微服务架构本身的特征入手,讨论微服务组件的设计指导原则、有效通信的方式以及常见的安全挑战和数据模

  • avatar 牛客229127715号 2021-06-22 18:32:30

    不聊原理,拿来即用的线程池最佳实践

    转载公众号: JavaGuide 这篇文章篇幅在5000字左右,绝对是干货。标题稍微有点夸张,嘿嘿,实际都是自己使用线程池的时候总结的一些个人感觉比较重要的点。 线程池知识回顾 为什么要使用线程池? “ 池化技术相比大家已经屡见不鲜了,线程池、数据库连接池、Http 连接池等等

  • avatar 牛客229127715号 2021-06-22 18:32:53

    这篇教你如何快速搭建SpringWeb应用和精通MVC架构,建议收藏

    内容提要 Spring MVC属于Spring Framework的衍生产品,已经融合在Spring Web Flow里面。Spring框架提供了构建Web应用程序的全功能MVC模块。SpringMVC4是当前最新的版本,在众多特性上有了进一步的提升。 本书中从头开始构建了一个完整的Web应用。

  • avatar CS指南 2021-06-22 18:33:03

    后端面试八股文Java篇

    文章来源:微信公众号【CS指南】 一年一度的秋招大戏又快拉开序幕了,近年来后端岗位越来越卷,毕业生的压力也越来越大。个人感觉目前各个大中厂校招面试不好的地方是,都在朝着背面试八股文的方向发展(曾经面试某二线厂,对着面试官纯背了 40 分钟概念),但不得不承认这也是企业在短时间内筛选面试者的一个重要手

    来自 CS指南
    516
  • avatar 牛客229127715号 2021-06-22 18:33:23

    太详细了!终于有人把Netty原理架构讲解清楚了

    本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。 Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。 JDK 原生 NIO 程序的问题 JDK

  • avatar 牛客229127715号 2021-06-22 18:33:47

    面试必问:乐观锁与悲观锁

    前言 小孩子才做选择,我全都要,今天写一下面试必问的内容:乐观锁与悲观锁。主要从以下几方面来说: 何为乐观锁 何为悲观锁 乐观锁常用实现方式 悲观锁常用实现方式 乐观锁的缺点 悲观锁的缺点 写文章的时候突然收到朋

  • avatar 牛客229127715号 2021-06-22 18:34:08

    SpringBoot的启动引导类真的是XXApplication吗?

    1. 引言 SpringBoot项目中的启动类,一般都是XXApplication,例如StatsApplication,UnionApplication。每个项目的启动类名称都不一样。但是它的启动类真的是XXApplication吗? 2. META-INF/Manifest.mf文件

  • avatar 牛客229127715号 2021-06-22 18:34:35

    如何完全掌握Spring MVC框架?这本学习指南pdf送给你,速来收藏

    Spring MVC是Spring 框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View -Contoller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 本书重在讲述如何通过SpringMVC来开

  • avatar 牛客229127715号 2021-06-22 18:34:59

    避免被diss,务必记住这些正确打日志的方式

    使用slf4j 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用: Logback框架 打日志的正确方式 什么时候应该打日志 定位问题 :当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定位

  • avatar 牛客229127715号 2021-06-22 18:35:20

    入职美团定级P7,总结2020年最新最全180道高级岗面试题及答案

        180道面试专题及答案pdf文档转发此文关注我私信回复【面试】即可免费领取 2020年最新180道JAVA高级面试专题 今年因为疫情原因,很多人在家里宅了很长一段时间,也有充足的时间复习筹备,为面试做足准备。我这里这筹备了一份各大互联网企业、大厂面试总结的180道最新中高级面试题

  • avatar 牛客229127715号 2021-06-22 18:35:41

    把 Java 8 流解析成 SQL

    当我们尝试用“Java 8 的方式”使用数据库时,如何去解决性能上的问题呢? 通过与 ZeroTurnaround 合作,我们为你带来了 Java Zone。你可以阅读这里的 8 个步骤的指南,来看看如何在编写代码时,利用跳过缓慢的应用程序重新部署的过程和实现应用程序分析来提高你的生产力吧! J

  • avatar 牛客229127715号 2021-06-22 18:36:03

    阿里巴巴为什么规定代码中禁用static修饰SimpleDateFormat?

    在项目开发过程中经常遇到时间处理,但是你真的用对了吗,理解阿里巴巴开发手册中禁用static修饰SimpleDateFormat吗? 通过阅读本篇文章你将了解到: 为什么需要LocalDate、LocalTime、LocalDateTime【java8新提供的类】 java8新的时间

  • avatar 牛客229127715号 2021-06-22 18:36:24

    一文详解负载均衡算法实现的四种方式

    负载平衡(Load balancing)是一种在多个计算机(网络、CPU、磁盘)之间均匀分配资源,以提高资源利用的技术。使用负载均衡可以最大化服务吞吐量,可能最小化响应时间,同时由于使用负载均衡时,会使用多个服务器节点代单点服务,也提高了服务的可用性。 负载均衡的实现可以软件可以硬件,硬件如大名鼎

  • avatar CS指南 2021-06-22 18:36:47

    后端面试八股文之MySQL

    文章来源:微信公众号【CS指南】面试八股文系列的第二篇终于完成了,本期推出八股文骚套路之 MySQL,主要讲解如何应对面试过程中MySQL 的相关问题。另外我在这个系列,也会逐渐将自己在准备秋招面试过程中的一些心得,以及一些技巧穿插的进行讲述,希望对大家有帮助。 友情提示 我写这个系列是为了给马上

    来自 CS指南
    25
  • avatar 牛客229127715号 2021-06-22 18:36:47

    还在对Git一知半解吗,这篇保姆级教程教你完全学会Git

    本书以教科书的方式,循序渐进地向软件开发人员或软件开发的项目管理人员,讲述如何快速掌握分布式版本控制系统Git的应用方法,让繁琐复杂的项目开发的版本控制变得高效且轻松自如。书中细致入微地介绍了如何使用设置文件和操作Git文档库,以及建立项目开发的分支、合并分支和解决冲突的操作:在具备扎实的基础之后,

  • avatar 牛客229127715号 2021-06-22 18:37:11

    把 Java 8 流解析成 SQL

    当我们尝试用“Java 8 的方式”使用数据库时,如何去解决性能上的问题呢? 通过与 ZeroTurnaround 合作,我们为你带来了 Java Zone。你可以阅读这里的 8 个步骤的指南,来看看如何在编写代码时,利用跳过缓慢的应用程序重新部署的过程和实现应用程序分析来提高你的生产力吧! J

  • avatar 牛客229127715号 2021-06-22 18:37:32

    Oracle官方推荐的性能测试工具!简单、精准又直观

    在前面的所有性能优化的文章中都是用了这款性能测试工具——JMH,一直没来得及给大家写一篇入门的教程,刚好看到了这篇,觉得非常不错,于是今天就分享给大家,希望对你有帮助。 if 快还是 switch 快?HashMap 的初始化 size 要不要指定,指定之后性能可以提高多少?各种序列化方法哪个

  • avatar 牛客229127715号 2021-06-22 18:37:53

    面试官:线程池里面到底该设置多少个线程?

    一、抛出问题 关于如何计算并发线程数,一般分两派,来自两本书,且都是好书,到底哪个是对的?问题追踪后,整理如下: 第一派:《Java Concurrency in Practice》即《java并发编程实践》,如下图:   如上图,在《Java Concurrency in Practi

  • avatar 牛客229127715号 2021-06-22 18:38:14

    如何保活主流RPC框架长连接,Dubbo的心跳机制,值得学习

      前言 谈到RPC肯定绕不开TCP通信,而主流的RPC框架都依赖于Netty等通信框架,这时候我们还要考虑是使用长连接还是短连接: 短连接:每次通信结束后关闭连接,下次通信需要重新创建连接;优点就是无需管理连接,无需保活连接; 长连接:每次通信结束不关闭连接,连接可以复用,保证了性能;

  • avatar 牛客229127715号 2021-06-22 18:38:39

    面试官又问我线程并发问题:什么是ThreadLocal?我这样怼回去了

    前言 ThreadLocal是JDK1.2提供的一个工具,它为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序,解决共享参数的频繁传递与线程安全等问题。如果开发者掌握了ThreadLocal用法与原理,那么使用起来将得心应手,那么请跟随本文的节奏,拨开迷

  • avatar 谢腾飞| 2021-06-22 18:38:50

    题解 | #表示数值的字符串#

    描述 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。 例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"1

    来自 谢腾飞|
    00
  • avatar 牛客229127715号 2021-06-22 18:39:05

    这篇让你真正理解Redis的RDB持久化,看完还不懂你们来打我

    一、为什么需要持久化 redis里有10gb数据,突然停电或者意外宕机了,再启动的时候10gb都没了?!所以需要持久化,宕机后再通过持久化文件将数据恢复。 二、优缺点 1、rdb文件 rdb文件都是二进制,很小。比如内存数据有10gb,rdb文件可能就1gb,只是举例。 2、优点 由

  • avatar 牛客229127715号 2021-06-22 18:39:26

    我凭借以下270道java最新面试真题四面阿里研发部,成功入职P7岗

    面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责。 今天给大家分享下我整理的Java架构面试专题及答案(文末见面试答案),其中大部分都是大企业面试常问的面试题,可以对照这查漏补缺,当然了,这里所列的肯定不可能覆盖全部方式,不过也希望能对即将找工作的朋友起到一些帮助! 阿里巴巴P7技

  • avatar 牛客229127715号 2021-06-22 18:39:48

    七天啃完410页java面试手册,三面阿里巴巴,5月成功入职研发部

    面试前我主要是在牛客网看大家的面经进行查漏补缺,所以面试完后也想记录下来,权当给大家提供点信息吧。 面试过了挺久了,记忆也有点混乱,争取想到多少就记下来多少(文末附答案以及大厂java核心面试手册) 阿里一面:   1、请简单介绍一下自己。   2、项目参与的核心设计有哪些?有没有遇到过

  • avatar 牛客229127715号 2021-06-22 18:40:09

    新公司还是使用SVN,一怒之下写了这篇保姆级小白教程

    现在一般开发都是协同开发了,所以会用到版本控制系统,说白了就是大家一起开发一个项目,分别写不同的代码,然后需要把代码汇总到一起,大家可能互相需要对方写的代码,就是大家共同去写一套代码,这就是需要版本控制系统,把大家写的代码存放到一个地方,相当于一个备份服务器! 主流的版本控制系统,现在来说,就

  • avatar 牛客229127715号 2021-06-22 18:40:37

    MySQL百万级、千万级数据多表关联SQL语句调优

    本文不涉及复杂的底层数据结构,通过explain解释SQL,并根据可能出现的情况,来做具体的优化,使百万级、千万级数据表关联查询第一页结果能在2秒内完成(真实业务告警系统优化结果)。 希望读者能够理解SQL的执行过程,并根据过程优化,走上自己的"成金之路" 需要优化的查询:

  • avatar 牛客229127715号 2021-06-22 18:40:57

    腾讯T4纯手打《数据结构和算法》源码笔记,学完一脚踢进大厂

    经历过互联网公司面试的同学大概都知道,数据结构和算法的知识技术栈是不可避免的,并且在笔试中,最重要的是靠算法题,尤其像头条这种大厂公司,上来就是算法题,答不出来的基本面试机会也不会有了。 小编这次分享的这本《数据结构和算法》学习笔记,包含了八大基础排序和链表/二叉树/栈/队列,需要的程序员伙伴可以

  • avatar 牛客229127715号 2021-06-22 18:41:26

    为什么建议框架源码学习从Mybatis开始

    看过Mybatis后,我觉得Mybatis虽然小,但是五脏俱全,而且设计精湛。 这个黑盒背后是怎样一个设计,下面讲讲我的理解 一、容器Configuration Configuration 像是Mybatis的总管,Mybatis的所有配置信息都存放在这里,此外,它还提供了设置这些配置信息

  • avatar 牛客229127715号 2021-06-22 18:41:46

    Git subtree 要不要使用 –squash 参数

    关于 Git Subtree 的一些使用细节,有的小伙伴可能不是很清楚,小编发现网上有一篇将要不要加 --squash 参数的文章讲的挺好的,因此这里和大家分享下。 原文地址: http://www.fwolf.com/blog/post/246 问题的产生 subtree 处理多层

  • avatar 牛客229127715号 2021-06-22 18:42:07

    刘涛入职阿里,年薪超过欧阳娜娜!揭秘阿里明星员工和职级薪资

    继前段时间欧阳娜娜加入阿里之后,现又有刘涛入职阿里成为了聚划算官方优选官! 一时,阿里巴巴的职能薪资体系引起广泛关注,不少HR看到后纷纷表示:马云要HR吗?我也要进阿里! 阿里巴巴作为国内的明星企业,其一举一动一直都备受关注,不管是薪资待遇,还是人才招聘要求都作为业内的标杆式存在。 近日,刘涛

  • avatar 牛客229127715号 2021-06-22 18:42:34

    线上远程京东技术三面+HR面,五月中旬成功就职京东,月薪30K

    今年受到疫情影响,很多大型互联网公司都采用线上面试的方法来挑选人才,也有很多幸运的小伙伴也是拿到大厂的offer,今天给大家分享的是我一位幸运拿到京东offer的朋友的面试经历,疫情刚有好转,相信还有很多朋友是在线上办公的,我也闲来无事,问到了我朋友京东面试的一些真题,以及我整理的一些真题分享给大家

  • avatar 牛客229127715号 2021-06-22 18:42:57

    Dubbo技术栈从入门到实战 细枝末节最详解学习笔记!

    一 为什么需要 dubbo 很多时候,其实我们使用这个技术的时候,可能都是因为项目需要,所以,我们就用了,但是,至于为什么我们需要用到这个技术,可能自身并不是很了解的,但是,其实了解技术的来由及背景知识,对于理解一项技术还是有帮助的,那么,dubbo是怎么被提上日程的呢? 在互联网的发展过程中,