Kafka常见问题总结
Kafka 基础 Kafka 是什么?主要应用场景有哪些? Kafka 是一个分布式流式处理平台。这到底是什么意思呢? 流平台具有三个关键功能: 消息队列:发布和订阅消息流,这个功能类似于消息队列,这也是 Kafka 也被归类为消息队列的原因。 容错的持久方式存储记录消息流:Kafka 会把消息持久
ZooKeeper 相关概念总结(入门)
相信大家对 ZooKeeper 应该不算陌生。但是你真的了解 ZooKeeper 到底有啥用不?如果别人/面试官让你给他讲讲对于 ZooKeeper 的认识,你能回答到什么地步呢? 拿我自己来说吧!我本人在大学曾经使用 Dubbo 来做分布式项目的时候,使用了 ZooKeeper 作为注册中心。为了
ZooKeeper(进阶)
本文转载来自JavaGuide ,如有侵权及时联系。 什么是 ZooKeeper ZooKeeper 由 Yahoo 开发,后来捐赠给了 Apache ,现已成为 Apache 顶级项目。ZooKeeper 是一个开源的分布式应用程序协调服务器,其为分布式系统提供一致性服务。其一致性是通过基于 Pa
十大经典排序算法
本文转自:http://www.guoyaohua.com/sorting.html,JavaGuide 对其做了补充完善。 引言 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。排序算法在很多领域得到相当地重视,
MyBatis常见面试题总结
本篇文章由 JavaGuide 收集自网络,原出处不明。 比起这些枯燥的面试题,我更建议你看看文末推荐的 MyBatis 优质好文。 #{} 和 ${} 的区别是什么? 注:这道题是面试官面试我同事的。 答: ${}是 Properties 文件中的变量占位符,它可以用于标签属性值和 sql 内部,
HTTP 常见状态码
HTTP 常见状态码 HTTP 状态码用于描述 HTTP 请求的结果,比如 2xx 就代表请求被成功处理。 1xx Informational(信息性状态码) 相比于其他类别状态码来说,1xx 你平时你大概率不会碰到,所以这里直接跳过。 2xx
HTTP vs HTTPS
HTTP 协议 HTTP 协议介绍 HTTP 协议,全称超文本传输协议(Hypertext Transfer Protocol)。顾名思义,HTTP 协议就是用来规范超文本的传输,超文本,也就是网络上的包括文本在内的各式各样的消息,具体来说,主要是来规范浏览器和服务器端的行为的。 并且,HTTP 是
TCP 三次握手和四次挥手
为了准确无误地把数据送达目标处,TCP 协议采用了三次握手策略。 建立连接-TCP 三次握手 建立一个 TCP 连接需要“三次握手”,缺一不可: 一次握手:客户端发送带有 SYN(SEQ=x) 标志的数据包 -> 服务端,然后客户端进入 SYN_SEND 状态,等待服务器的确认; 二
布隆过滤器
布隆过滤器相信大家没用过的话,也已经听过了。 布隆过滤器主要是为了解决海量数据的存在性问题。对于海量数据中判定某个数据是否存在且容忍轻微误差这一场景(比如缓存穿透、海量数据去重)来说,非常适合。 文章内容概览: 什么是布隆过滤器? 布隆过滤器的原理介绍。 布隆过滤器使用场景。 通过 Java 编程手
树
树就是一种类似现实生活中的树的数据结构(倒置的树)。任何一颗非空树只有一个根节点。 一棵树具有以下特点: 一棵树中的任意两个结点有且仅有唯一的一条路径连通。 一棵树如果有 n 个结点,那么它一定恰好有 n-1 条边。 一棵树不包含回路。 下图就是一颗树,并且是一颗二叉树。 如上图所示,通过上面这张图
线性数据结构:数组、链表、栈、队列
1. 数组 数组(Array) 是一种很常见的数据结构。它由相同类型的元素(element)组成,并且是使用一块连续的内存来存储。 我们直接可以利用元素的索引(index)可以计算出该元素对应的存储地址。 数组的特点是:提供随机访问 并且容量有限。 假如数组的长度为 n。
访问:O(1)//访问特定
计算机网络常见知识点&面试题总结
计算机网络基础 网络分层模型 OSI 七层模型是什么?每一层的作用是什么? OSI 七层模型 是国际标准化组织提出一个网络分层模型,其大体结构以及每一层提供的功能如下图所示:
Spring 中的设计模式详解
“JDK 中用到了哪些设计模式? Spring 中用到了哪些设计模式? ”这两个问题,在面试中比较常见。 我在网上搜索了一下关于 Spring 中设计模式的讲解几乎都是千篇一律,而且大部分都年代久远。所以,花了几天时间自己总结了一下。 由于我的个人能力有限,文中如有任何错误各位都可以指出。另外,文章
SpringBoot自动装配原理详解
作者:Miki-byte-1024 & Snailclimb 侵权联系即删 每次问到 Spring Boot, 面试官非常喜欢问这个问题:“讲述一下 SpringBoot 自动装配原理?”。 我觉得我们可以从以下几个方面回答: 什么是 SpringBoot 自动装配? SpringBoot 是如何实
Java魔法类Unsafe详解
本文转载来自JavaGuide ,如有侵权及时联系。 阅读过 JUC 源码的同学,一定会发现很多并发工具类都调用了一个叫做 Unsafe 的类。 那这个类主要是用来干什么的呢?有什么使用场景呢?这篇文章就带你搞清楚! Unsafe 介绍 Unsafe 是位于 sun.misc 包下的一个类,主要提供
BigDecimal 详解
本文转载来自JavaGuide ,如有侵权及时联系。 《阿里巴巴 Java 开发手册》中提到:“为了避免精度丢失,可以使用 BigDecimal 来进行浮点数的运算”。 浮点数的运算竟然还会有精度丢失的风险吗?确实会! 示例代码: float a = 2.0f - 1.9f; float b = 1
JavaSPI机制详解
本文来自JavaGuide ,如有侵权及时联系。 在面向对象的设计原则中,一般推荐模块之间基于接口编程,通常情况下调用方模块是不会感知到被调用方模块的内部具体实现。一旦代码里面涉及具体实现类,就违反了开闭原则。如果需要替换一种实现,就需要修改代码。 为了实现在模块装配的时候不用在程序里面动态指明,这
JDK监控和故障处理工具
本文来自JavaGuide ,如有侵权及时联系。 JDK 命令行工具 这些命令在 JDK 安装目录下的 bin 目录下: jps (JVM Process Status): 类似 UNIX 的 ps 命令。用于查看所有 Java 进程的启动类、传入参数和 Java 虚拟机参数等信息; jstat(J