面试
文章平均质量分 92
二俊89757
性格踏实沉稳,并善于倾听他人,沟通表达能力较强,生活中善于解决他人困惑和问题;
有代码洁癖,喜欢代码review,喜欢思考重构自己负责的代码;
遵循阿里开发手册,有良好的代码规范;
对于计算机开发有浓厚的兴趣,有较强的学习和理解能力,自学过PS,AI,Sketch等软件;
乐于接受新鲜事物,并且能够积极应对学习生活中的各项挑战。
展开
-
聊聊接口幂等性
一、什么是幂等性幂等性是系统服务对外一种承诺,承诺只要调用接口成功,外部多次调用对系统的影响是一致的。声明为幂等的服务会认为外部调用失败是常态,并且失败之后必然会有重试。二、接口幂等性对于同一笔支付信息如果我其中某一次处理成功了,我虽然又接收到了消息,但是这时我不处理了,即保证接口的 幂等性。维基百科上的定义:幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。**在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。**幂等原创 2020-10-19 23:28:27 · 479 阅读 · 0 评论 -
这可能是Redis比较全的知识整理
Redis和zookeeper做分布式锁的区别,redis为什么适合做分布式锁,它又存在什么问题todoRedis如何实现mq的功能todoRedis实现的消息队列功能和mq有什么区别todoredis单线程为什么执行速度这么快?(1):纯内存操作,避免大量访问数据库,减少直接读取磁盘数据,redis将数据储存在内存里面,读写数据的时候都不会受到硬盘 I/O 速度的限制,所以速度快(2):单线程操作,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换而消耗CPU,不用去考原创 2020-10-19 23:24:48 · 210 阅读 · 0 评论 -
这可能是Solr比较全的知识整理
Solr介绍Solr是建立在Apache Lucene ™之上的流行,快速,开放源代码的企业搜索平台。Solr具有高度的可靠性,可伸缩性和容错性,可提供分布式索引,复制和负载平衡查询,自动故障转移和恢复,集中式配置等。Solr为许多世界上最大的互联网站点提供搜索和导航功能。文档Solr官网Solr8.3官方文档Solr W3Cschool官方文档用法SolrJSolrJ是一个API,它使用Java(或任何基于JVM的语言)编写的应用程序可以轻松地与Solr交谈。SolrJ隐藏了许多连接到So原创 2020-10-19 23:23:11 · 4508 阅读 · 0 评论 -
这可能是MyBatis比较全的知识整理
MyBatis编程步骤是什么样的创建SqlSessionFactory通过SqlSessionFactory创建SqlSession通过sqlsession执行数据库操作调用session.commit()提交事务调用session.close()关闭会话Mybatis原理sqlsessionFactoryBuilder生成sqlsessionFactory(单例)工厂模式生成sqlsession执行sql以及控制事务Mybatis通过动态代理使Mapper(sql映射器)接口能运行原创 2020-10-19 23:14:53 · 141 阅读 · 0 评论 -
Java面试软技能相关问题
怎么保证服务高可用冗余 + 故障转移MySQL主从架构服务超时机制平时怎么学习制定自己的成长计划,给自己人生定一个方向,达成这个方向我需要做哪些事情每年制定自己的todo list,今年我对自己的要求是(1.了解JVM和一个框架系统的学习和掌握源码,2.要产出博客,定时总结)然后制定学习计划,计划每天按照进度学习渠道:看正确的书,选一些传播度和影响力比较好的书;看视频学习,去了解用法;看github一些用法积累和总结:在平台去发布自己根据看书总结的文章,印象笔记总结最近在学习的一原创 2020-10-19 23:12:51 · 281 阅读 · 1 评论 -
这可能是Java并发比较全的知识整理
如何优雅的创建线程池Excutor会产生OOM异常,FixedThreadPool和SingleThreadExecutor => 允许的请求队列长度为Integer.MAX_VALUE,可能会堆积大量的请求,从而引起OOM异常CachedThreadPool => 允许创建的线程数为Integer.MAX_VALUE,可能会创建大量的线程,从而引起OOM异常ScheduledExecutorServicenew ThreadFactoryBuilder()ThreadPoo原创 2020-10-19 23:09:11 · 118 阅读 · 0 评论 -
这可能是Java容器比较全的知识整理
LinkedHashMap底层数据结构?能够实现LRU吗?LinkedHashMap实现与HashMap的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可以是插入顺序或者是访问顺序。重新了newNode构建自己的节点对象。put方法中LinkedHashMap重写了afterNodeInsertion和afterNodeAccess方法。public class LRUCache<K,V> extends LinkedHashMap<K,原创 2020-10-19 23:07:45 · 111 阅读 · 0 评论 -
这可能是MySQL比较全的知识整理
MySQL索引什么是索引高效获取数据的数据结构,相当于书的目录,使用B+树结构,索引是存储在磁盘文件中的(可能单独的索引文件中,也可能和数据一起存储在数据文件中)索引的分类单列索引普通索引:MySQL中基本索引类型,没有什么限制,允许在定义索引的列中插入重复值和空值,纯粹为了查询数据更快一点。唯一索引:索引列中的值必须是唯一的,但是允许为空值。主键索引:是一种特殊的唯一索引,不允许有空值组合索引在表中的多个字段组合上创建的一个索引组合索引的使用,需要遵循最左前缀原原创 2020-10-19 23:05:30 · 278 阅读 · 2 评论 -
这可能是JVM比较全的知识整理
Java内存结构线程私有的:程序计数器(当前线程所执行的字节码的行号指示器)虚拟机栈(每次方法调用的数据都是通过栈传递的。局部变量表/对象引用/实例方法)本地方法栈(有一个native关键字修饰,而且不存在方法体,这种用native修饰的方法就是本地方法)线程共享的堆(栈管运行,堆管存储,堆是垃圾收集器管理的主要区域)方法区(存放类的元数据信息,常量和静态变量)直接内存(非运行数据区的一部分)Java内存模型概念Java内存模型(Java Memory原创 2020-10-19 23:02:04 · 294 阅读 · 1 评论 -
这可能是Spring比较全的知识整理-2
Spring的Bean怎么动态加载使用 BeanDefinitionBuilder注册bean(BeanDefinitionBuilder.rootBeanDefinition),添加属性&注册bean,beanFactory.registerBeanDefinition(“testBean”, b1.getBeanDefinition());使用 BeanFactoryPostProcessor注册bean。BeanFactoryPostProcessor允许自定义BeanDefinitio原创 2020-09-19 23:26:37 · 152 阅读 · 0 评论