1.JVM 内存模型能说一下吗?在方法内和类内定义这个: A a = new A(),引用和对象分别在哪里?答:内存模型4个区说一下。new出来的对象一定在堆。如
果是类中,那么这个引用a就是类的属性了,在方法区。如果在方法中定义的,那就在虚拟机栈的栈帧中。
2.Java中如何使用多线程技术?答:首先答创建线程的主要方法(继承Thread或实现Runnable),重载run方法然后start调用。高级一点的可以使用线程池,可以避免线程频繁创建和销毁的开销。
3.线程安全的集合类了解吗?答:HashTable ConcurrentHashMap的实现区别答了。
4.数据库的引擎了解吗,InnoDB MyIsam区别说一下?索引的优点和缺点?(这个问题比较常规,网上一堆总结。另外可以从底层B+树存储key value的差异来解析两种引擎索引的区别)
5.Redis了解吗,有几种数据结构?答:字符串哈希list set sortedset
6.Linux常用命令有哪些?有个看日志的是什么?答:常用的ps find grep等。看日志用tail -f 实时查看,-n可以指定查看尾部多少行。
7.Springboot中常见的注解有哪些?
8.项目中轻量级HTTP服务器是怎么实现的?答: github上找了一个,然后按照项目需求把同步方式路由配置等参数进行了修改。
9.常见的HTTP状态码有哪些?什么意思?答:200OK 500内部服务器错误404NotFound 403未认证还有两个3字头的表示重定向,具体记不清了。
10.有没有做过网站相关的后台项目?答:做了一个宠物商店图片视频等信息的展示系统(很小但是上线了的一个项目),用的Springboot+Mysql+Redis
11.哪个地方用到Redis 了?Redis的几种数据结构各自有什么用?
12.Mysql的事务隔离级别说一下,分别可能产生哪些问题?
13.如果客户端想上传一个很大的视频,服务器端该怎么处理?
14.JVM内存模型?如何GC进行优化?答:内存模型答了。优化方面,要结合具体业务和内存占用情况,另外要根据需求选择对应gc收集器,如要控制吞吐量
就用G1,要最短停顿就用CMS,然后顺带着提了一下CMS的优缺点。
15.除了Java还会别的语言吗?对GO有了解吗?
16.你有没有什么问题要问?问了一下部门负责的业务以及主要的技术栈;另外问了一下加班的情况。主要语言是GO其次是Java。加班不多,相对轻松一点。
全部评论
(3) 回帖