随笔分类 - 面试题
摘要:1、现在有 T1、T2、T3 三个线程,你怎样保证 T2 在 T1 执行完后执行,T3 在 T2 执行完后执行? 这个线程问题通常会在第一轮或电话面试阶段被问到,目的是检测你对”join”方法是否熟悉。这个多线程问题比较简单,可以用 join 方法实现。 2、在 Java 中 Lock 接口比 sy
阅读全文
摘要:1、 Linux 中主要有哪几种内核锁? Linux 的同步机制从 2.0 到 2.6 以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到今天的自旋锁。这些同步机制的发展伴随 Linux 从单处理器到对称多处理器的过渡;伴随着从非抢占内核到抢占内核的过度。Linux 的锁机制越来越有效
阅读全文
摘要:1、Dubbo 是什么? Dubbo 是一个分布式、高性能、透明化的 RPC 服务框架,提供服务自动注册、自动发现等高效服务治理方案, 可以和Spring 框架无缝集成。 2、Dubbo 支持哪些协议,每种协议的应用场景,优缺点? dubbo: 单一长连接和 NIO 异步通讯,适合大并发小数据量的服
阅读全文
摘要:1. 前后端分离是如何做的 2. 微服务哪些框架 Dubbo,是阿里巴巴服务化治理的核心框架,并被广泛应用于阿里巴巴集团的各成员站点。阿里巴巴近几年对开源社区的贡献不论在国内还是国外都是引人注目的,比如:JStorm 捐赠给 Apache 并加入 Apache 基金会等,为中国互联网人争足了面子,使
阅读全文
摘要:1、请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别? SQL 标准定义的四个隔离级别为: read uncommited :读到未提交数据 在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少
阅读全文
摘要:一、Synchronized 相 关 问 题 1、Synchronized 用 过 吗 , 其 原 理 是 什 么? 这 是 一 道 Java 面 试 中 几 乎 百 分 百 会 问 到 的 问 题 , 因 为 没 有 任 何 写 过 并发 程 序 的 开 发 者 会 没 听 说 或 者 没 接 触
阅读全文
摘要:1、什么是 Spring Boot? 多年来,随着新功能的增加,spring 变得越来越复杂。只需访问 https://spring.io/projects页面,我们就会看到可以在我们的应用程序中使用的所有 Spring 项目的不同功能。如果必须启动一个新的 Spring 项目,我们必须添加构建路径
阅读全文
摘要:1、什么是 Spring MVC? SpringMvc 是 spring 的一个模块,基于 MVC 的一个框架,无需中间整合层来整合。 2、Spring MVC 的优点 1)它是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是 java组件.并且和 Spring 提供的其他基
阅读全文
摘要:1、什么是 Spring 框架?Spring 框架有哪些主要模块? Spring 框架是一个为 Java 应用程序的开发提供了综合、广泛的基础性支持的 Java 平台。 Spring 帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发。 Spring 框架本身亦是按照设计模式精
阅读全文
摘要:1、什么是 MyBatis? MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。 2、讲下 MyBatis 的缓存 MyBatis 的缓存分为一级缓存和二级缓存,一级缓存放在 session 里面,默认就有,二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实
阅读全文
摘要:1、Tomcat 的缺省端口是多少,怎么修改? 1)找到 Tomcat 目录下的 conf 文件夹 2)进入 conf 文件夹里面找到 server.xml 文件 3)打开 server.xml 文件 4)在 server.xml 文件里面找到下列信息 <Connector connectionTi
阅读全文
摘要:1、BIO、NIO 和 AIO 的区别? BIO:一个连接一个线程,客户端有连接请求时服务器端就需要启动一个线程进行处理。线程开销大。伪异步 IO:将请求连接放入线程池,一对多,但线程还是很宝贵的资源。NIO:一个请求一个线程,但客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有 I
阅读全文
摘要:1、请解释一下什么是 Nginx? Nginx 是一个 web 服务器和反向代理服务器,用于 HTTP、HTTPS、SMTP、POP3和 IMAP 协议。 2、请列举 Nginx 的一些特性 Nginx 服务器的特性包括: 反向代理/L7 负载均衡器嵌入式 Perl 解释器动态二进制升级可用于重新编
阅读全文
摘要:1、RabbitMQ 中的 broker 是指什么?cluster 又是指什么? broker 是指一个或多个 erlang node 的逻辑分组,且 node 上运行着 RabbitMQ 应用程序。cluster 是在 broker 的基础之上,增加了 node 之间共享元数据的约束。 2、什么是
阅读全文
摘要:1.请列举出在 JDK 中几个常用的设计模式? 单例模式(Singleton pattern)用于 Runtime,Calendar 和其他的一些类中。工厂模式(Factory pattern)被用于各种不可变的类如 Boolean,像Boolean.valueOf,观察者模式(Observer p
阅读全文