自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 资源 (1)
  • 收藏
  • 关注

原创 四面快手、终拿Offer,想告诉你的一些事情

本篇面经来自于群里粉丝朋友的分享,希望对你有所帮助!快手高开及以上职级面试 是没有笔试或者机试的,所以从第一轮开始就是直接面对面试官。一轮主要考察对Java基础的理解和深入程度。Spring 原理,Spring IOC、AOP。这个问题 最好可以多说一点,比如 对于IOC,不妨把Bean 如何加载、如何初始化以及如何注册到IOC容器中的详细过程说一下, 涉及BeanDefin...

2019-11-24 16:42:11 4555

转载 如何高效选择一款消息队列?

在高并发业务场景下,消息队列在流量削峰、解耦上有不可替代的作用。当前使用较多的消息队列有 RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、Pulsar 等。消息队列这么多,到底该选择哪款消息队列呢?选择消息队列的基本标准虽然这些消息队列在功能和特性方面各有优劣,但我们在选择的时候要有一个基本标准。首先,必须是开源的产品。开源意味着,如果有一天你使用的...

2019-10-18 21:39:31 332

转载 当面试官要你介绍一下MQ时,该怎么回答?

一、为什么要使用MQ消息中间件?一个用消息队列的人,不知道为啥用,有点尴尬。没有复习这点,很容易被问蒙,然后就开始胡扯了。回答:这个问题,咱只答三个最主要的应用场景,不可否认还有其他的,但是只答三个主要的,即以下六个字:解耦、异步、削峰1、解耦传统模式:传统模式的缺点:系统间耦合性太强,如上图所示,系统A在代码中直接调用系统B和系统C的代...

2019-09-26 17:56:00 641

转载 Spring中,关于IOC和AOP的那些事

一、spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦2.可以使用容易提供的众多服务,如事务管理,消息服务等3.容器提供单例模式支持4.容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能5.容器提供了众多的辅助类,能加快应用的开发6.spring对于主流的应用框架提供了集成支持,如hibernate,JPA,Struts等7....

2019-09-23 14:24:43 247

转载 并发编程面试宝典(内含69道常问面试题及答案解析)

一、开篇:众所周知,在Java的知识体系中,并发编程是非常重要的一环,也是面试的必问题,一个好的Java程序员是必须对并发编程这块有所了解的。因此,大家不难发现 Java 并发问题一直是各个大厂面试的重点之一。我在平时的面试中,也发现很多候选人对一些基本的并发概念表示没听过,或原理不理解,可能知道一些却又讲不清楚,最终导致面试失败。适逢金九银十跳槽季,作为 Java 开发者你开始忙...

2019-09-04 20:02:59 584

原创 揭秘Zookeeper的特点及应用场景

Zookeeper简介Zookeeper是一个高性能的分布式一致系统,在分布式系统中有着广泛的应用。基于它,可以实现分布式同步、配置管理、命名空间管理等众多功能,是分布式系统中常见的基础系统。Zookeeper主要用来解决分布式集群中应用系统的一致性问题,它有着树状结构的节点,每个节点均可存储少量的数据。同时,用户可以修改和订阅节点中的内容。分布式系统中的节点通过监控这些数据状态的变化,从...

2019-07-30 19:55:01 392

翻译 一个知名网站的微服务架构最佳实现

译者语:如果你的项目正在从单体升级为微服务而忧心;或者你在实践微服务过程中手忙脚乱,本文都是你不容错过的好文。微服务架构的目标是帮助工程团队更快、更安全、更高质量地交付产品。拆分服务允许团队快速迭代的同时,保证了对系统剩余部分的最小影响。在Medium,我们的技术堆栈始于2012年的单体Node.js应用程序。我们已经构建了几个卫星服务,但我们还没有制定一个系统地采用微服务架...

2019-07-09 14:10:04 719

原创 漫谈微服务架构:什么是Spring Cloud,为何要选择Spring Cloud

Spring Cloud是基于Spring Boot的,因此还在使用SpringMVC的同学要先了解Spring Boot。先上一段官话,Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发框架。...

2019-06-30 15:56:57 222

原创 以Mybatis源码为突破口,带你重新理解这九大设计模式

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。Mybatis至少遇到了以下的设计模式的使用。Builder模式:例如SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、XMLStateme...

2019-06-29 21:51:30 148

转载 SpringCloud微服务架构升级总结

一、背景1.1 应用系统的架构历史1.2 什么是微服务?起源:微服务的概念源于 2014 年 3 月 Martin Fowler 所写的一篇文章“Microservices”。文中内容提到:微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。通信方式:每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相...

2019-06-28 21:35:24 203

转载 别再问什么是数据库分库分表了,看这里!

编者语:为了避免被误解为:「手里有把锤子,看什么都是钉子!」,说明一下不是什么业务都适合分布式数据库,更不是用了分布式数据库性能就一定能得到扩展。其次:本文为纯干货,建议先转发、收藏再观看。分布式数据库已经流行好多年,产品非常众多,其中分布式数据库中间件使用场景最广。本文主要是通过几道关于分库分表的常问面试题带你深入了解数据库分库分表,希望对大家能够有所帮助!一:面试题为什...

2019-06-16 17:20:49 4732

转载 什么是服务网关?为什么需要服务网关?如何选择服务网关?

一、什么是服务网关服务网关 = 路由转发 + 过滤器1、路由转发:接收一切外界请求,转发到后端的微服务上去;2、过滤器:在服务网关中可以完成一系列的横切功能,例如权限校验、限流以及监控等,这些都可以通过过滤器完成(其实路由转发也是通过过滤器实现的)。二、为什么需要服务网关上述所说的横切功能(以权限校验为例)可以写在三个位置: 每个服务自己实现一遍 写到一个公...

2019-05-27 16:55:47 21698 3

转载 如果你项目中引入了Redis,那你不应该错过这篇文章!

目录 概述 Redis的数据结构和常用命令 数据持久化 内存管理与数据淘汰机制 Pipelining 事务与Scripting Redis性能调优 主从复制与集群分片 Redis Java客户端的选择 本文将从Redis的基本特性入手,通过讲述Redis的数据结构和主要命令对Redis的基本能力进行直观介...

2019-05-21 21:34:57 449

原创 基于消息中间件的分布式事务原理

前言关于分布式事务的实现,网上有很多解说,当然这也是面试官的常备面试题。很多朋友在工作中很少接触到分布式事务,认为这个玩意交互太多,没必要。其实我也是这么想的,想要完成一个完整的分布式事务链路,通信开销实在太多。而现如今,微服务架构在行业内大行其道,恨不得所有模块都用上微服务来管理,而不知道自己已经慢慢失去了对软件控制的能力,从数据层面上来说,我们降低了对数据一致性控制的能力。既然市场上很流行...

2019-05-19 19:39:53 309

转载 分库分表中间件的高可用实践

前言分库分表中间件在我们一年多的锤炼下,基本解决了可用性和高性能的问题(只能说基本,肯定还有隐藏的坑要填),问题自然而然的就聚焦于高可用。本文就阐述了我们在这方面做出的一些工作。哪些高可用的问题作为一个无状态的中间件,高可用问题并没有那么困难。但是尽量减少不可用期间的流量损失,还是需要一定的工作的。这些流量损失主要分布在:(1)某台中间件所在的物理机突然宕机。 (2)...

2019-05-17 17:45:11 657

原创 Mybatis源码分析之9种常用设计模式总结

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。Mybatis至少遇到了以下的设计模式的使用:Builder模式,例如SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、XMLStatemen...

2019-05-15 15:46:32 164

原创 Java架构师成长路径(最新版)

jvm 一行代码是怎么运行的首先,java代码会被编译成字节码,字节码就是java虚拟机定义的一种编码格式,需要java虚拟机才能够解析,java虚拟机需要将字节码转换成机器码才能在cpu上执行。 我们可以用硬件实现虚拟机,这样虽然可以提高效率但是就没有了一次编译到处运行的特性了,所以一般在各个平台上用软件来实现,目前的虚拟机还提供了一套运行环境来进行垃圾回收,数组越界检查,权限校验等。虚拟机...

2019-05-14 21:47:44 2227

转载 不容错过的HashMap实现原理及源码分析

哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录  一、什么是哈希表...

2019-05-07 22:53:15 141

转载 假如一个小时后,全世界将永久断网,程序员们会做什么?

互联网已经渗入我们生活的方方面面,于是我们就免不了会思考:如果有一天网络断了怎么办呢?英国 Cable.co.uk 曾进行了一项有趣的"断网"调查,调查发现在 2500 名受访者当中,有 29% 的受访者表示宁愿失去手指也不愿断网。这些受访者表示,他们无法面对无宽带连接的生活,他们将上网视为生命线,他们认为失去了互联网连接,可能产生被社会孤立的感觉。假如某一天断网了,程序员会...

2019-05-07 19:21:44 244

原创 十面阿里,七面头条,手拿六个Offer,你猜我最后选了哪家?

面试者背景简介双非末流一本,大三,软件专业(Java),有百度实习经历面试情况十面阿里,总共分为阿里云四面,蚂蚁两面,菜鸟四面;七面头条分为金融三面,抖音一面,效率工程三面;六个Offer分别是阿里、腾讯、头条、华为、蘑菇街、三七互娱从二月份在牛客网看到阿里云的招聘贴就投了,那是我最早投递的公司,当时也没什么经验,导致表现得很糟糕,最后四面跪,当时伤心到谷底,幸好跪得比较早...

2019-05-07 15:39:39 1087

转载 开源自用 OpenJDK 版本,阿里巴巴向全球 Java 开发者的重磅献礼

阿里巴巴重磅开源 OpenJDK 长期支持版本 Alibaba Dragonwell。众所周知,Oracle 对 Java 的态度已经发生系列转变,由于 Java 用户群体庞大,预计此事在很长一段时间内都是开发者的讨论焦点。作为世界上最大的 Java 用户之一,阿里巴巴选择开源 OpenJDK 长期支持版本 Alibaba Dragonwell 是出于哪些考量呢?Oracle 撒手,宣布对...

2019-04-29 17:07:04 1053

原创 又一个程序员倒下,病态 996 早需改变,而且不应该只从这里开始!

前两天看到一个视频,视频内容是关于某创业公司的一位员工在镜头下缓缓倒下,虽说最终抢救回来了,但是当时看到这个视频的时候,老李我着实也为视频中的主人公捏了一把汗。看了这个事件之后,老李忍不住想和大家叨叨几句,说说自己对996的一些看法与建议。本文不是鸡汤、广告,全部是老李亲身经历与感悟。01 能增值自己的996,才值得去奋斗还记得我刚毕业到上海的第一年,很幸运得到了一家国外知名...

2019-04-26 23:12:05 449

原创 互联网浪潮下,Java程序员如何追赶技术革新的脚步?

一:时代背景身处互联网行业的我们一直处在变革的最前端,受到行业发展浪潮的洗礼,不停歇地追赶着技术革新的脚步。特别是近几年来, 互联网架构不断演化,经历了从集中式架构到分布式架构,再到云原生架构的过程 。在这个演变过程中,我们可以深刻感受到一系列的格局变化 —— 软件改变世界,开源改变软件,云吞噬开源。每一次架构模式的升级都会给这个世界的合作模式带来变化。“云原生”因能解决传统应用升级缓慢、...

2019-04-20 22:08:01 432

原创 最新阿里Java面试题整理+进阶资料分享,看完直接收藏

前言:金三已经过去,现在是银四,据我了解,好多人都会在三月份选择跳槽,为什么大家都会在三月份选择离职跳槽呢?那当然是新年刚刚过去,大家也许是觉得老公司待遇不怎么样?薪资不够高,想换个新环境等等原因,所以,三月份就变成了招聘与跳槽的旺季,那为什么四月份就比不上三月份呢?相信不用我说大家也知道,毕竟三月份大家都去凑热闹,都去招聘与面试了,四月份还剩下来的招聘与面试的人就寥寥无几了,而且四月份还...

2019-04-09 22:41:26 250

转载 不懂微服务?那是因为你没认真看完这篇文章

目录如下:一、微服务架构介绍二、出现和发展三、传统开发模式和微服务的区别四、微服务的具体特征五、SOA和微服务的区别六、如何具体实践微服务七、常见的微服务设计模式和应用八、微服务的优点和缺点九、思考:意识的转变十、参考资料和推荐阅读一、微服务架构介绍微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各...

2019-04-03 22:37:12 1098

转载 为什么做java开发的公司需要那么多程序员?

透过现象看本质。Java是企业应用市场的王者,如果一家非互联网公司用Java,那么十有八九是做企业应用的。所以,这个问题本质上是:为什么做企业应用的公司需要那么多Java程序员。开发企业应用的公司有其自身的特点。下面9点不一定在所有企业应用的公司身上都存在,但肯定是大同小异。相对于互联网来说,企业应用不是一个公平竞争的市场。互联网公司创业之初往往是因为有好想法好技术,...

2019-03-24 15:03:33 1701

原创 【荐】从Java面试官的角度,如何快速判断程序员的能力

临近金三银四面试跳槽黄金季,最近面试跳槽的人特别多,关注我的朋友都知道我不轻易做分享,因为这没有标准答案,看法也因人而异。但我发现有些面试问题还挺普遍的,今天就说说我做面试官这几年的经验,从面试官的角度去看面试,希望对在准备面试以及想要提升的程序员们有点启发,以下仅是个人经验总结:如何阅读候选人简历阅读候选人的简历,这是招聘流程中的第一项工作。候选人的简历各式各样,工程师们...

2019-03-18 21:39:07 457 1

转载 跳槽季如何快速全面复习面试题

去年的这个时候小编通过两个月的复习拿到了阿里巴巴的 offer,有一些运气,也有一些心得,借着跳槽季来临特此分享出来。简单梳理一下我的复习思路,同时也希望和大家一起交流讨论,一起学习,如果不对之处欢迎指正一起学习。本文即是复习思路,亦可当做学习思路。我大致把 JAVA 的复习分为如下几个方向。1、JVM;2、排序算法和 Java 集合&工具类;3、多线程和并发包;...

2019-03-09 22:03:11 174

原创 分布式架构的演进之道

一、前言我们都知道,当今无论在BAT这样的大公司,还是各种各样的小公司,甚至是传统行业刚转互联网的企业都开始使用分布式架构,那么什么叫分布式架构呢?分布式架构有什么好处呢?分布式架构经过了怎样的发展呢?是哪家企业开启了分布式架构的时代呢?读完本文,你就会得到这些答案,下面让我们一起来开启分布式概述的奇妙之旅吧!二、分布式架构的发展历史1946年2.14日,那是一个浪漫的情人节 , ...

2019-03-07 21:16:11 115

原创 面试经验总结:注意这几点,面试通过率上涨30%

又到了一年中的招聘旺季的时候,想必很多人都萌动了跳槽的心,笔者也抱着同样的想法换了个公司,从10底开始面,面到1月初,面了有快二十五家公司。我是一个喜欢总结经验的人,每经过一场面试,我在回来的路上都会仔细回想今天哪些问题可以答的更好,或者哪些问题是自己之前没遇到过的,或者是哪个知识点今天又问了等等。不会那就多做准备,往往机会都是留给有准备的人。到现在已经找到满意的工作了,对自己这段痛苦的面试做...

2019-02-25 18:10:44 4853

原创 大龄程序员怎样渡过中年危机?

在娱乐圈,哦不,是在程序员这个吃青春饭的行业,有一个人人闻之色变的话题,曰:「年老色衰」。只要是个程序员,心里都会惴惴不安的想:「我老了以后卖不动色相,哦不,写不动代码了,我还能干啥呢?」。今天咱们来谈谈这个禁忌话题。在我还是25岁的时候,我和很多程序员一样,其实有同样的担心,老了以后怎么办?写代码难道还能写到30岁?当我30岁的时候,我发现自己创业去了,虽然非常苦逼,但是苦中作乐...

2019-02-17 14:57:59 624 1

转载 阿里开发强制要求的11条索引创建规范,提高性能

 1. 【强制】业务上具有唯一特性的字段,即使是多个字段的组合,也必须建成唯一索引。说明:不要以为唯一索引影响了insert速度,这个速度损耗可以忽略,但提高查找速度是明显的;另外,即使在应用层做了非常完善的校验控制,只要没有唯一索引,根据墨菲定律,必然有脏数据产生。2. 【强制】超过三个表禁止join。需要join的字段,数据类型必须绝对一致;多表关联查询时,保证被关联的字段需要有索...

2019-01-24 16:13:30 1317

转载 致传统企业码友的一封信:不够痛就别微服务

 一、微服务落地是一个复杂问题,牵扯到IT架构,应用架构,组织架构多个方面 在多家传统行业的企业走访和落地了微服务之后,发现落地微服务是一个非常复杂的问题,甚至都不完全是技术问题。 当时想微服务既然是改造应用,做微服务治理,类似注册,发现,熔断,限流,降级等,当然应该从应用开发组切入,一般一开始聊的会比较开心,从单体架构,到SOA,再到微服务架构,从Dubbo聊到SpringC...

2019-01-10 18:57:09 273

转载 史上最全Redis面试题(含答案):哨兵+复制+事务+集群+持久化等

 Redis主要有哪些功能?哨兵(Sentinel)和复制(Replication)Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制。Sentinel可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能,Replication则是负责让一个Redis服务器可以配备多个备份的服务器。Redis也是...

2019-01-09 15:06:17 116869 5

转载 如何写好一份技术简历?

写简历的基本目的和策略大部分情况下,写简历是找工作的第一步,考虑到第二步就是面试,那么简历就是敲门砖,为了让企业认识到你的价值,必须把自己的真实水平描述出来,展现出你有能力应对这份工作。甚至要体现出自己是某方面的杰出人才,因为只有足够优秀的人,企业才能更看重你,因为你会为企业带来不一样的价值,对应的待遇也将更好。所以写简历的根本策略就是如实的体现出你的水平和阅历,那么如何体现呢?不是通过说...

2018-12-13 21:07:40 2074

原创 快讯|连月薪8万的架构师也“外包”了,那我们该怎么办?

小编今天看到一篇文章,大意是某些不靠谱的互联网公司为了节省人力成本,连团队里的定海神针——架构师都外包了: 其实,这从侧面体现出,架构师这一行业的吃香,但是如果真的遇到这种情况该怎么办呢?小编我咨询了一位律师朋友,他表示,目前不少企业都存在“真派遣,假外包”的行为,以此逃避法律规定的“同工同酬及与员工签署固定劳动期限的劳动协议”等义务。但事实上,法院针对这一类行为有明确的鉴别标准,员工...

2018-12-12 18:03:56 531 1

转载 Java程序员从阿里拿到offer回来,这些面试题你会吗?

前不久刚从阿里面试回来,为了这场面试可以说准备了一个半月,做的准备就是刷题和看视频看书充实自己的技术,话说是真难啊,不过还算顺利拿到了offer,有很多面试题我已经记不起来了,这些是当天回家整理好的,下面我来跟大家一起分享一下。首先我们需要明白一个事实,招聘的一个很关键的因素是在给自己找未来的同事,同级别下要找比自己优秀的人,面试是一个双向选择的过程,也是一个将心比心去沟通的过程。和以前一...

2018-12-05 22:30:07 265

转载 微服务架构设计纲要

微服务       软件架构是一个包含各种组织的系统组织,这些组件包括 Web服务器, 应用服务器, 数据库,存储, 通讯层), 它们彼此或和环境存在关系。系统架构的目标是解决利益相关者的关注点。Conway’s law: Organizations which design systems[...] are constrained to produce designs which a...

2018-11-27 19:48:44 1431

原创 普通的程序员和大神级的程序员有什么区别?

普通的程序员和大神级的程序员的区别,小编来列举几点,顺便给一些普通程序员一些学习建议,请查收 ~一、主要问题1、没有编程思想或许很多人觉得很扯,但确实是这样的。高级程序员在看到一个需求的时候,总是能够快速在大脑里生成这个需求在现实生活中的映射。每当产品经理提一个需求的时候,高级程序员首先想到的就是,这个需求需要哪些数据库上的改动,对现有的逻辑有什么影响,需要提供多少接口,存在哪些可...

2018-11-26 17:53:52 2428 1

转载 如何在高性能服务器上进行JVM调优?

为了充分利用高性能服务器的硬件资源,有两种JVM调优方案,它们都有各自的优缺点,需要根据具体的情况进行选择。1、采用64位操作系统,并为JVM分配大内存我们知道,如果JVM中堆内存太小,那么就会频繁地发生垃圾回收,而垃圾回收都会伴随不同程度的程序停顿,因此,如果扩大堆内存的话可以减少垃圾回收的频率,从而避免程序的停顿。因此,人们自然而然想到扩大内存容量。而32位操作系统理论上最大只...

2018-11-24 16:18:17 566

BAT经典Java面试题分享

金九银十,又到了面试求职高峰期,最近有很多网友都在求大厂面试题。正好我之前电脑里面有这方面的整理,于是就发上来分享给大家。 这些题目是网友去百度、小米、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

2018-09-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除