
面试
JerryTan_xiao
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面试官问我如何保证Kafka不丢失消息
kafka如何保证不丢消息生产者丢失消息的情况生产者(Producer) 调用send方法发送消息之后,消息可能因为网络问题并没有发送过去。所以,我们不能默认在调用send方法发送消息之后消息消息发送成功了。为了确定消息是发送成功,我们要判断消息发送的结果。但是要注意的是 Kafka 生产者(Producer) 使用 send 方法发送消息实际上是异步的操作,我们可以通过 get()方法...原创 2020-03-17 10:54:32 · 661 阅读 · 0 评论 -
你还在 new 对象吗?Java8 通用 Builder 了解一下?
程序员经常会遇到灵魂拷问:你有对象吗?没有,但我可以 new 一个!public class GirlFriend { private String name; private int age; // 省略 getter & setter ... public static void main(String[] args) { GirlF...原创 2020-02-20 09:04:03 · 340 阅读 · 0 评论 -
实际生产中,微服务用 Spring Cloud 多还是 Dubbo 多?
springCloud是http协议传输,带宽会比较多,同时使用http协议一般会使用JSON报文,消耗会更大dubbo的开发难度较大,原因是dubbo的jar包依赖问题很多大型工程无法解决springcloud的接口协议约定比较自由且松散,需要有强有力的行政措施来限制接口无序升级dubbo的注册中心可以选择zk,redis等多种,springcloud的注册中心只能用eureka或者自研...转载 2020-02-15 10:50:29 · 583 阅读 · 0 评论 -
一次完整 HTTP 调用涉及到的技术
DNS 解析域名什么是 DNS我们访问网站的时候会输入域名,而在真实网络中主机通信是通过 IP 地址进行通信的,DNS 服务器的作用就是将这域名字符串解析为对应的 IP 地址有哪些 DNS 服务器如果说每输入一个域名都需要去一个 DNS 服务器解析的话,全世界这么高的访问量,肯定是无法承载的,所以会对 DNS 服务器进行按层分级,不同类型的 DNS 服务器负责解析不同的域名本地 DN...原创 2020-02-14 08:50:07 · 290 阅读 · 0 评论 -
这个老大难问题,我使用 ThreadLocal 一次解决
1.ThreadLocal的使用场景1.1 场景1每个线程需要一个独享对象(通常是工具类,典型需要使用的类有SimpleDateFormat和Random)每个Thread内有自己的实例副本,不共享比喻:教材只有一本,一起做笔记有线程安全问题。复印后没有问题,使用ThradLocal相当于复印了教材。1.2 场景2每个线程内需要保存全局变量(例如在拦截器中获取用户信息),可以让不同方法...原创 2020-02-13 17:15:50 · 607 阅读 · 0 评论 -
17 个方面,综合对比 Kafka、RabbitMQ、RocketMQ、ActiveMQ 四个分布式消息队列
1原创 2020-02-12 19:39:43 · 175 阅读 · 0 评论 -
40 道 Java 多线程面试题及答案
1、多线程有什么用?一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓"知其然知其所以然",“会用"只是"知其然”,“为什么用"才是"知其所以然”,只有达到"知其然知其所以然"的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看法:1)发挥多核CPU的优势随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双...原创 2020-02-12 14:31:31 · 281 阅读 · 0 评论 -
JAVA面试锦囊(三)
● 说说存储过程的特点?(1) 存储过程只在创建时进行编译,以后每次执行存储过程都不需要重新编译,而一般SQL语句每次执行一次就编译一次,因此使用存储过程可以大大提高数据库执行速度。(2) 通常,复杂的业务逻辑需要多条SQL语句。这些语句要分别的向客户机发送到服务器,当客户机和服务器之间的操作很多时,将产生大量的网路传输。而存储过程可以把这些SQL封装起来,通过调用存储过程来减少网络传输。(...原创 2020-02-12 13:36:07 · 162 阅读 · 0 评论 -
JAVA面试锦囊(二)
● MVC的各个部分都由哪些常见技术来实现?(1) M(Model):javaBean(2) V(View):html、jsp、volicity、freemaker(3) C(Control):Servlet、Action、最经典的MVC模式:Jsp+Servlet+javaBean,实际上就是model2的实现方式,就是把视图和逻辑隔离开,而Model1的实现方式jsp+service+...原创 2020-02-11 19:14:58 · 134 阅读 · 0 评论 -
JAVA面试锦囊(一)
● 实现一个文件拷贝功能时,我们使用字节流还是字符流?我们拷贝的文件时候,不确定文件是只包含字符流,有可能字节流(图片、声音、图像等),为了考虑到通用性,要使用字节流。● 说说你对Servlet的理解?Servlet(Server Applet),全称Java Servlet,是用Java编写的服务器端程序,而这些程序都要实现Servlet这个接口。其主要功能在于交互式的浏览和修改数据,生成...原创 2020-02-11 19:14:06 · 159 阅读 · 0 评论 -
面试官问:MySQL的自增ID用完了,会出现什么问题?
既然这块知识点不清楚,那回头就自己动手实践下。首先,创建一个最简单的表,只包含一个自增id,并插入一条数据。 `create table t0(id int unsigned auto_increment primary key) ;` `insert into t0 values(null);`通过show命令 show create table t0; 查看表情况``CREAT...原创 2020-02-09 11:08:56 · 855 阅读 · 0 评论