背景 老刘最近晚上会刷刷牛客网的大数据开发面经,总是会看到一个高频的面试题,那就是你在学习过程中遇到过什么问题吗? 这个问题其实有点难回答,如果我说的太简单了,会不会让面试官觉得水平太低,那我应该讲什么东西呢?我一个自学的不可能遇到什么高级问题呀! 对于这个问题的答案网上也是众说纷纭,老刘也讲讲对这个问题的看法,分享一下自己的见解,欢迎各位伙伴前来battle! 过程 在寻找这个问题答案的过程中,老刘正好在学习spark框架的实时计算模块SparkStreaming,它里面就有一个非常经典的问题…
前言 在Java面试中,简历上有写JVM(Java虚拟机)相关的东西,JVM的类加载机制基本是面试必问的知识点. 类的加载和卸载 JVM是虚拟机的一种,它的指令集语言是字节码,字节码构成的文件是class文件.平常我们写的Java文件,需要编译为class文件才能交给JVM运行.可以这么说:C语言代码——>二进制文件——>计算机硬件,就相当于Java代码——>字节码文件——>JVM.JVM将指定的class文件读取到内存里,并运行该class文件里的Java程序的过程,就称之为类的…
前言 zookeeper相信大家都不陌生,很多分布式中间件都利用zk来提供分布式一致性协调的特性.dubbo官方推荐使用zk作为注册中心,zk也是hadoop和Hbase的重要组件.其他知名的开源中间件中也都出现了zk的身影. 有很多童鞋认识zk很久了,知道其基本理念,知道如何使用.但当面试时问到集群zk之间的选举和数据同步机制时,就陷入了盲区. 其实很多的分布式中间件的选举和同步,都和zk有异曲同工之妙.这篇文章我就来重点聊下关于zk集群之间的选举和同步机制. ZK集群的部署 首先我们来看下半…
前言 dubbo是一款微服务开发框架,它提供了 RPC通信 与 微服务治理 两大关键能力.作为spring cloud alibaba体系中重要的一部分,随着spring cloud alibaba在国内活跃起来,dubbo也越来越深受各大公司的青睐.本文就来对dubbo的spi机制源码进行剖析,看一看dubbo的spi到底有哪些特性和功能. 一.什么是spi机制? SPI (Service Provider Interface),主要用于扩展的作用.举个例子来说,假如有一个框架有一个接口,他有…
最近面试被问到一个问题,AtomicInteger如何保证线程安全?我查阅了资料 发现还可以引申到 乐观锁/悲观锁的概念,觉得值得一记. 众所周知,JDK提供了AtomicInteger保证对数字的操作是线程安全的,线程安全我首先想到了synchronized和Lock,但是这种方式又有一个名字,叫做互斥锁,一次只能有一个持有锁的线程进入,再加上还有不同线程争夺锁这个机制,效率比较低,所以又称“悲观锁”. 但是相应的有了乐观锁的概念,他的思路就是,它不加锁去完成某项操作,如果因为冲突失败就重试,…
linux内核原理面试必问(由易到难) 简单型 1:linux中内核空间及用户空间的区别?用户空间与内核通信方式有哪些? 2:linux中内存划分及如何使用?虚拟地址及物理地址的概念及彼此之间的转化,高端内存概念? 3:linux中中断的实现机制,tasklet与workqueue的区别及底层实现区别?为什么要区分上半部和下半部? 4:linux中断的响应执行流程?中断的申请及何时执行(何时执行中断处理函数)? 5:linux中的同步机制?spinlock与信号量的区别? 6:linux中RCU…
开篇介绍 本自测与面试题出自 微软BI SSIS 2012 ETL 控件与案例精讲 (http://www.hellobi.com/course/21) 课程,对于学完本课程的每一课时和阅读完相关辅助阅读博客之后,都需要通过以下自测题来巩固课程中所学习到的基本知识点.具体相关学习方法与面试准备可以参考 微软BI SSIS 2012 ETL 控件与案例精讲课程学习方式与面试准备详解 一文. 自测与面试 200 问 此自测题也可以作为面试题来准备,虽然对于 ETL 控件的面试大多不会考察到这么细的粒…
前言 面试官出很多考题,基本都会变着方式来考察this指向,看候选人对JS基础知识是否扎实.读者可以先拉到底部看总结,再谷歌(或各技术平台)搜索几篇类似文章,看笔者写的文章和别人有什么不同(欢迎在评论区评论不同之处),对比来看,验证与自己现有知识是否有盲点,多看几篇,自然就会完善自身知识. 附上之前写文章写过的一段话:已经有很多关于this的文章,为什么自己还要写一遍呢.学习就好比是座大山,人们沿着不同的路登山,分享着自己看到的风景.你不一定能看到别人看到的风景,体会到别人的心情.只有自己去登山…
面试的时候我们经常会被问答js的数据类型.大部分情况我们会这样回答包括:1.基本类型(值类型或者原始类型): Number.Boolean.String.NULL.Undefined以及ES6的Symbol2.引用类型:Object.Array.Function.Date等作者曾经也是这样回答的,并且一直觉得没有什么问题.那么面试官问你Js数据类型时,他想知道什么呢? 1 .在内存中的位置不同 基本类型: 占用空间固定,保存在栈中: 引用类型:占用空间不固定,保存在堆中: 栈(stack)为自动…
Redis是一个非常火的非关系型数据库,火到什么程度呢?只要是一个互联网公司都会使用到.Redis相关的问题可以说是面试必问的,下面我从个人当面试官的经验,总结几个必须要掌握的知识点. 介绍:Redis 是一个开源的使用 ANSI C 语言编写.遵守 BSD 协议.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库,并提供多种语言的 API的非关系型数据库. 传统数据库遵循 ACID 规则.而 Nosql(Not Only SQL 的缩写,是对不同于传统的关系型数据库的数据库管理…