一面

版权声明:个人收集,转载注明,谢谢支持 https://blog.csdn.net/qq_42629110/article/details/85046016

1)订单的状态
1.未支付
2.已支付(未发货)
3.已发货(未签收)
4.已签收
5.申请退款
6.已退款
7.订单关闭

2)支付的时候因为脑裂,此时可以调用支付宝接口进行手动查询+TCC

3)Dubbo的结构

4)服务的注册与发现

5)ZooKeeper一般用来解决问题
1.命名服务
2.分布式锁
3.消息队列
4.集群管理
5.统一配置文件

6)SpringBoot你有什么理解

7)rabbitmq的消息模式 6种

8)rabbitmq如何保证消息的可靠性?

9)如果此时磁盘损坏了,还能保证消息的可靠性吗?
使用rabbitmq的集群,保证消息高可用

10)平常用得最多的java集合是什么?
ArrayList,动态数组
扩容因子1.5
线程安全的集合,
vector,stack,
CopyOnWriteArrayList

11)map平时有用过吗

12)concurrentHashMap的分段锁机制

HashTable容器在竞争激烈的并发环境下表现出效率低下的原因,是因为所有访问HashTable的线程都必须竞争同一把锁,那假如容器里有多把锁,每一把锁用于锁容器其中一部分数据,那么当多线程访问容器里不同数据段的数据时,线程间就不会存在锁竞争,从而可以有效的提高并发访问效率,这就是ConcurrentHashMap所使用的锁分段技术,首先将数据分成一段一段的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也能被其他线程访问。

13)hashset是怎么实现的
基于hashmap

14)线程池了解过吗?
四种线程池

15)如何创建一个线程池对象
1.Executors:线程池创建工厂类
2.ExecutorService:线程池类

16)线程池本身是一个什么对象

17)锁有了解过吗?

18)volatile
  一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:

1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。

2)禁止进行指令重排序。
ThreadPoolExecutor

19)什么是CAS
SSO单点登录
20)JVM如何打印线程栈
一般情况下,通过jstack输出的线程信息主要包括:jvm自身线程、用户线程等。其中jvm线程会在jvm启动时就会存在。对于用户线程则是在用户访问时才会生成。
jvm线程:
在线程中,有一些 JVM内部的后台线程,来执行譬如垃圾回收,或者低内存的检测等等任务,这些线程往往在JVM初始化的时候就存在

jdk安装后会自带一些小工具,jmap命令(Java Memory Map)是其中之一。主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。

jmap命令可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小等等。可以使用jmap生成Heap Dump。

21)JVM分为哪些区
1.程序计数器
2.Java栈
3.本地方法栈
4.堆
5.方法区

22)堆区分为哪些区

23)Linux有用过吗
如何查看内存利用率 top
如何查看磁盘利用率 df -h

24)我这边差不多了,看你那边有什么需要了解的吗?

猜你喜欢

转载自blog.csdn.net/qq_42629110/article/details/85046016