随笔分类 - 学习笔记
摘要:●查看硬件信息相关命令(8个) ifconfig free fdisk ethtool mii-tool dmidecode dmesg lspci ●其它(19个) echo printf rpm yum watch alias unalias date clear history eject t
阅读全文
摘要:1、Elasticsearch了解多少,说说你们公司ES的集群架构,索引数据大小,分片有多少,以及一些调优手段 。答: 面试官:想了解应聘者之前公司接触的ES使用场景、规模,有没有做过比较大规模的索引设计、规划、调优。 解答: 如实结合自己的实践场景回答即可。 比如:ES集群架构13个节点,索引根据
阅读全文
摘要:1. ZooKeeper 是什么?ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的Chubby 一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。客户
阅读全文
摘要:1.使用RabbitMQ有什么好处? 1.解耦,系统A在代码中直接调用系统B和系统C的代码,如果将来D系统接入,系统A还需要修改代码,过于麻烦!2.异步,将消息写入消息队列,非必要的业务逻辑以异步的方式运行,加快响应速度3.削峰,并发量大的时候,所有的请求直接怼到数据库,造成数据库连接异常 2.Ra
阅读全文
摘要:面试题来源:https://blog.csdn.net/v123411739/article/details/116109674 Redis 是单线程还是多线程? 这个问题应该已经看到过无数次了,最近 redis 6 出来之后又被翻出来了。 redis 4.0 之前,redis 是完全单线程的。 r
阅读全文
摘要:本文题目和答案均来源于:https://blog.csdn.net/yanpenglei/article/details/121994645 为什么人们会犹豫使用微服务? 它们需要大量协作 - 微服务需要大量的合作。不同的微服务模块,可能分散在不同的团队,团队之间需要始终保持良好的同步。 他们需要建
阅读全文
摘要:什么是 Spring Boot? SpringBoot是Spring开源项目下的子项目,是Spring的一站式解决方案,采用“约定大于配置”的设计理念,简化了Spring的使用难度。 Spring Boot 有哪些优点? 自动配置,简化配置,自带Tomcat,独立运行,无需部署,无代码生成 Spri
阅读全文
摘要:前言:本文大量学习参考自:https://joonwhee.blog.csdn.net/article/details/106893197 MySQL 的事务隔离级别有哪些?分别用于解决什么问题? Read-Uncommited,读未提交。存在脏读问题。 Read-Commited,读已提交。解决脏
阅读全文
摘要:MyBatis与Hibernate有哪些不同? Mybatis是半自动ORM框架,sql需要自己写在xml里面,灵活性高。Hibernate是全自动ORM框架,不需要自己写sql语句,代码简便,数据库可移植性高(换数据库影响小)。 #{}和${}的区别是什么? #{}通过PreparedStatem
阅读全文
摘要:本文主要参考文章:标题:《SpringMVC 工作原理详解》 作者:y.yang 链接:https://www.cnblogs.com/yoci/p/10642493.html、 前言:MVC是一种设计模式,如下图 SpringMVC的实际流程。如下图 1)前端请求DispatcherServlet
阅读全文
摘要:面试题来源:https://blog.csdn.net/v123411739/article/details/110009966 Spring源码:https://javadoop.com/post/spring-ioc IOC容器初始化过程? BeanFactory(常用ClassPathXmlA
阅读全文
摘要:ArrayBlockingQueue和LinkedBlockingQueue都是BlockingQueue的实现,前者是数组实现,后者是链表实现。 相同点:都是通过reentrantlock和condition实现生产者和消费者,队列空时,消费者队列阻塞,队列满时,生产者队列阻塞。 不同点:1.Ar
阅读全文
摘要:1.线程状态 下面是JDK中定义的线程状态 public enum State { /** * Thread state for a thread which has not yet started. */ NEW, /** * Thread state for a runnable thread.
阅读全文
摘要:本文参考文章: 标题:《【JVM系列1】JVM内存结构》 作者:楼仔 链接:https://mp.weixin.qq.com/s/nSwNZpObWLGteG-v7n5PSw 标题:《JVM内存模型详解(1.7与1.8的区别)》 作者:weihubeats 链接:https://blog.csdn.
阅读全文
摘要:前言:在上文反射面试题中,提到JDBC使用反射来加载驱动程序,就是加载时运行了statci代码块。本文来主要讨论一下与此相关的类加载器和双亲委派机制。 标题:《老大难的 Java ClassLoader,到了该彻底理解它的时候了》 作者:codehole_ 链接:https://blog.csdn.
阅读全文
摘要:学习时用到的文章参考: 标题:《Java的反射机制》作者:JustJavaIt 链接:https://www.cnblogs.com/liaowenhui/p/12571362.html 标题:《Java反射(超详细!)》作者:一个快乐的野指针~ 链接:https://blog.csdn.net/q
阅读全文
摘要:首先转载写本文前学习时借鉴的三个技术博客: 标题:《深入理解Java中的IO》 作者:沉淀所有的痛 链接:https://www.cnblogs.com/ylspace/p/8128112.html 标题:《吃透Java IO:字节流、字符流、缓冲流》 作者:云深i不知处 链接:https://bl
阅读全文
摘要:前言:前文讨论了volatile保证工作内存和主内存之间的数据一致性问题(可见性),但是运算的原子性没有保证,那么使用CAS就可以用来解决这个原子性运算问题。 CAS,即Compare And Swap,是一种典型乐观锁的实现。来自大佬的定义:CAS需要有3个操作数:内存地址V,旧的预期值A,即将要
阅读全文
摘要:前言:volatile可以说是JVM提供的最轻量级的同步机制,人们常说volatile保证变量的可见性和禁止重排序,那么怎么理解呢?应该从Java内存模型说起。 一、可见性 由于处理器和内存的运算速度存在较大差异,为了保证效率,现代计算机引入读写速度接近内存读取速度的高速缓存区,这样一来就有了内存一
阅读全文
摘要:问题的源头:HashMap数据结构是? 数组加链表,1.8增加了红黑树,那么为什么使用数组加链表?如果简单回答:“数组的特点查找快,增删慢,链表查找慢,增删快,数组加链表是结合两者优点”,其实这种描述并不对。在使用HashMap的时候数组插入并不慢,而链表增删快的特点也没有发挥出来,因为每次put都
阅读全文