1 唉.

尚未进行身份认证

Java后端及云计算和大数据

等级
TA的排名 2w+

Apache Thrift介绍

文章目录1、简介2、Thrift IDL2.1、基本类型2.2、结构体struct2.3、容器Container2.4、枚举enum2.5、常量定义2.6、类型定义2.7、异常Exception2.8、服务定义类型Service2.9、名字空间NameSpace2.10、注释Comment2.11、include1、简介thrift官网Apache Thrift软件框架用于可伸缩的跨语言服务...

2020-05-05 13:26:19

疏漏总结(八)

1、密集索引和稀疏索引的区别密集索引文件中的搜索码都对应一个索引值稀疏索引文件中只会为某些索引码的某些值建立索引项2、意向锁3、Redis集群Redis有三种集群,分别是主从复制,哨兵模式,集群模式详情见此篇文章,Pipeline及主从同步模式和哨兵模式4、DNS解析的流程5、TCP三次握手过程是否传输数据6、Spring中的设计模式7、Spring Bean生命周期8、...

2020-04-19 20:44:40

剑指Offer(SQL)——密集索引和稀疏索引

密集索引和稀疏索引的区别:密集索引文件中的每个搜索码值都对应一个索引值稀疏索引文件中只为索引码的某些值建立索引项接下来以MySQL为例说明:在mysql中有两种搜索引擎:MyISAM和InnoDBMyISAM引擎:不管是主键索引,唯一键索引还是普通索引,其索引都属于稀疏索引。InnoDB引擎:若一个主键被定义,该主键则作为密集索引若没有主键被定义,该表的第一个唯一非空索引...

2019-12-25 11:41:26

疏漏总结(七)

文章目录1、Spring框架事务传播行为2、G1垃圾收集器三色标记法3、Resource和Autowired区别4、用户态和内核态5、JDK12中G1的新功能1、Spring框架事务传播行为Spring的传播行为确定了客户端和被调用端的事务边界,简单来说就是多个具有事务控制的Service的相互调用时所形成的复杂的事务边界控制。Spring定义了7种传播行为:REQUIRED:默认事务传播...

2020-04-18 22:02:11

疏漏总结(六)

1、Java快速失败和安全失败1、快速失败:两个线程A读一个集合内容B去更新相同集合的内容会报ConcurrentModificationException的错误。原因是:集合框架内部针对每个元素偶个modCount如果元素值改变,modCount会改变,如使用hashNext()/next()遍历到modCount改变的元素(每次迭代会比较是否为自己心仪的modConut)就会报错。2、安...

2020-04-17 22:16:09

疏漏总结(五)

文章目录1、线程池的最大核心线程数的意义2、线程池的状态3、http 1.1版本新特性4、何时需要rehash5、Full GC触发条件6、何种场景需要自定义类加载器7、分段和分页区别8、最左前缀原则9、G11、线程池的最大核心线程数的意义提交一个新的任务到线程池中首先线程池会判断基本线程池(corePoolSize)是否已满?没满的话会创建一个工作线程来执行任务。满了进入下个流程;其次线...

2020-03-30 21:49:46

疏漏总结(四)

文章目录yield和join跨域的流程分布式事务MVCC和可重复读Cookie和Sessionsubmit原理MyBatis缓存机制yield和joinThread.yield()作用是暂停当前的正在执行的线程去执行其他的线程。yield()做的是让当前运行线程回到可运行状态,允许相同优先级的线程后的运行的机会。使用其的目的是使相同优先级的线程之间能够适当的轮转执行。但是实际情况是yield...

2020-03-27 12:44:14

疏漏总结(三)

TCP如何解决粘包tcp是基于流的协议,是没有边界的,本身也是不具有包的,粘包是应用层协议的问题,tcp只能保证每条数据按照顺序发送而不能控制粘包。metaspaceJDK8开始将类的元数据放在本地内存中这个部分叫做MetaSpace元空间。这个区域在JDK7之前属于永久代,元空间和永久代都是存储class的相关信息包括class对象的Method,实际上元空间和永久代都是之前说的方法区的实...

2020-03-24 10:37:32

京东后端开发面经

部门是做信息安全的,经历两面时间相隔比较长。感觉整体面试不是特别的难。一面(50min)1、自我介绍2、介绍一下简历上的项目(问了整体架构和实现的功能以及表的设计,Redis存储的东西,ES如何进行使用的以及RabbitMQ使用到去实现哪些功能模块)3、MyBatis的${}和#{}区别,以及SQL注入4、计算机网络中A类、B类、C类、D类地址中的私有地址以及对应的子网掩码5、Spa...

2020-03-20 20:42:40

疏漏总结(二)——volatile

volatile是面试中常常被问到的,现在来总结一下volatile的关键地方。volatile是如何实现禁止指令重排的???先来说一下什么是指令重排:int m = 1;int n = 1;JVM中的顺序可能是先执行初始化n,再初始化m,这个就叫做指令重排。为何JVM要进行指令重排?指令重排就初衷就是在代码不改变执行的结果的情况下改变代码执行的顺序,这个执行层面是操作系统级别的,...

2020-03-19 22:50:29

疏漏总结(一)

线程池大小如何设置对于计算密集型的任务,一个有Ncpu个处理器的系统通常通过使用一个Ncpu+1个线程池来获得最优的利用率。对于包含了IO和其他阻塞操作的任务,不是所有的线程都会在所有的时间被调度,因此需要一个更大的池。2*NcpuNthreads = Ncpu x Ucpu x (1 + W/C)其中,Ncpu = CPU核心数Ucpu = CPU使用率,0~1W/C = 等待时间与...

2020-03-19 22:16:25

字节跳动后端开发面经

本人双非,投完简历后以为被挂了没想到最后收到面试邀请。一面1、首先是自我介绍2、简历上的项目,用的技术栈,解决了什么问题,数据库表是如何进行设计的等等。。。3、算法题:反转链表合并多个数组n1、反转链表2、合并多个有序数组3、N皇后还有个多线程的编程题:创建五个线程然后有序的输出1到5,输出后就结束(总体来说还是蛮简单的)。...

2020-03-18 21:41:55

摩尔投票算法

什么是摩尔投票算法?摩尔投票算法是一种使用线性时间和常数空间查找大部分元素序列的算法。它以1981年出版的Robert S. Boyer和J Strother Moore的名字命名,并且是流式算法的典型例子。最简单的形式就是,查找输入中重复出现超过一半以上(n/2)的元素。如果序列中没有这种元素,算法不能检测到正确结果,将输出其中的一个元素之一。如果不能保证输入数据中有占有一半以上的元素,需要...

2020-02-11 18:33:17

剑指Offer(网络)——TCP和UDP的区别

前两篇文章讲解了TCP协议。接下来来介绍一下UDP,从UDP协议的报文结构开始说起相对于TCP,UDP报文结构简单了很多:源端口、目标端口、数据包长度和奇偶校验值和用户数据组成。结构简单,少了很多TCP具有的功能,其中有:不支持错误重传;不支持滑动窗口。UDP特点:面向无连接;不维护连接状态,支持同时向多个客户端传输相同的信息;数据包报头只有8个字节,额外的开销比较小;吞...

2020-02-05 20:31:47

剑指Offer(网络)——TCP四次挥手

挥手指的就是终止连接,TCP四次挥手流程图如下:客户端或者服务端触发close,假设客户端触发close数据传输完毕之后,双方才可以释放连接;最开始客户端和服务端都处于Established状态,假设客户端主动关闭;首先客户端发送连接释放报文并停止发送数据,该数据报报头中携带的flag为FIN=1,seq=u,u指的是刚才连接状态下传送过来的最后一条信息的最后一个序号加上1,此时客户端...

2020-02-05 18:48:40

剑指Offer(网络)——TCP三次握手

简单来介绍一下传输控制协议TCP:TCP协议是面向连接的、可靠的、基于字节流的传输层通信协议;当数据传输的时候,应用层向TCP发送数据流,然后TCP会将应用层的数据流分割成报文段并发送给目标节点的TCP层;TCP为了保证不丢包就给每一个包一个序号(Sequence Number),同时序号也保证对方接受数据的时候顺序是一定的;当对方收到数据的时候回复一个ACK去确认,如果在合理的时延之内...

2020-02-05 12:38:12

剑指Offer(Spring)——AOP

AOP——面向切面编程软件有一个重要的概念:关注点分离:不同的问题交给不同的部分去解决。AOP是一种关注点分离的技术,写Web时需要写缓存、业务逻辑、日志、出错处理等等东西都要放在一起,为了将业务各个功能分离开切面就出现了,当业务功能代码和切面代码分开之后架构就会变得高内聚低耦合。如果模块化之后虽然模块本身的成本降低了,但是接口的开发的成本又升高了我们为了保证业务的完整性就需要使用切面将业务...

2020-02-04 13:27:00

剑指Offer(Spring)——IOC容器

容器内部的运行的原理:Spring启动的时候读取应用程度提供的bean配置并在Spring容器中生成一份相应的bean配置注册表,然后根据这张注册宝去是实例化bean,装配好bean之间的依赖关系后为上层提供准备就绪的运行环境,Spring提供一个配置文件描述bean和bean之间的依赖关系,利于Java的反射功能实例化bean,并在建立bean之间的依赖关系。Spring IOC支持的功能...

2020-02-03 23:55:27

剑指Offer(Spring)——IOC原理

IOC(Inversion of Control):控制反转,是Spring最核心部分也是任意组件的基本,是一种思想,可以使你从繁琐的对象嵌套中解锁出来更进一步突出面向对象,在这之前先来了解一下依赖注入(Dependency Inversion)。举个依赖注入的例子:设计行李箱:可以发现这四个是互相依赖的关系,他们是逐步依赖的关系,如果底层修改全局都得修改,通过代码来直观的观察一下:如果...

2020-02-03 21:16:27

剑指Offer(类库)——Java的IO机制

本文主要介绍一下BIO、NIO、AIOBlock-IO:基于字节流的InputStream和OutputStream,基于字符流的Reader和Writer,同时也包括Socket那些java.net包下的类等。BIO的属性是同步阻塞的,优点就是写起来简单缺点是效率太低。NonBlock-IO:在JDK4中引入了NIO,它是一种构建多路复用的,同步非阻塞的IO操作提供了Selector、C...

2020-02-02 01:03:01

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。