常见面试题为什么使用消息队列?其实就是问问你消息队列都有哪些使用场景,然后你项目里具体是什么场景,说说你在这个场景里用消息队列是什么? 面试官问你这个问题,期望的一个回答是说,你们公司有个什么业务场景,这个业务场景有个什么技术挑战,如果不用MQ可能会很麻烦,但是你现在用了MQ之后带给了你很多的好处。消息队列的常见使用场景,其实场景有很多,但是比较核心的有3个:解耦、异步、削峰。解耦:A系统发送个数
一、Redis相关面试题1.redis数据类型答:string、Hash、list、无序集合、有序集合2.redis过期策略?内存淘汰策略?答:过期策略:1.定时删除:创建一个定时器,到时间立即执行删除操作(对内存友好,因为能保证过期了立马删除,但是对cpu不友好)2.惰性删除:键过期不管,每次获取键时检查是否过期,过期就删除(对cpu友好,但是只有在使用的时候才可能删除,对内存不友好)3
原创
2022-11-18 12:37:46
172阅读
# Java 中间件面试题解析与示例
Java 中间件是连接不同应用程序或系统组件的软件,它提供了一种通信和数据交换的方式。在面试中,了解Java中间件的相关知识和技能是非常重要的。本文将通过一些常见的面试题,结合代码示例,帮助读者更好地理解Java中间件的概念和应用。
## 1. Java中间件的基本概念
Java中间件是一种独立的软件服务,位于客户端和服务器之间,为不同的应用程序提供通信
常见中间件ES和RocketMQ的面试题一. RocketMQ如何防止消息丢失MQ的消息生成到消费主要经历三个阶段:MQ消息生产、RocketMQ Broker存储消息、消费者消息对应的消息。如下图:消息丢失情况消息生产者将消息发送到RocketMQ Broker的这个过程可能出现消息丢失。生产者只要接收到返回的ack,就代表这个阶段的消息未丢失。生产者通过网络将消息发送到Broker,然后等待B
目录@、列举了当下比较知名的消息引擎@、消息队列使用场景@、消息中间件acitveMQ的作用、原理?@、了解几种消息中间件产品?各产品的优缺点介绍; 消息中间件如何保证消息的一致性和如何进行消息的重试机制?@、列举了当下比较知名的消息引擎ZeroMQ推特的DistributedlogActiveMQ:Apache旗下的老牌消息引擎RabbitMQ、Kafka:AMQP的默认实现。RocketMQA
转载
2023-07-01 16:34:00
66阅读
前言文章开始前,我们先了解一下什么是消息中间件?什么是中间件?非底层操作
原创
2023-05-26 06:01:43
67阅读
│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection 是最基本的集合接口,一个Collection 代表一组Object,即Collection 的元素(Elements); Map 提供key 到value 的映射。2、List,Set,Map 是否继承自Collection 接口?【基础】答:Lis
java面试之消息中间件kafka【1】一些面试常见的kafka问题及解答。如果你的简历里写了用过kafka,那么最好能够了解kafka的原理和常用应用场景,不然就会。。。。1. kafka由哪些角色组成(1)Producer 消息生产方 (2)Consumer 消息接收方 (3)Broker 服务器代理节点2. topic和partitionkafka中还有两个很重要的概念:topic和part
什么是Spring Cloud StreamSpring Cloud Stream是一个用来为微服务应用构建消息驱动能力的框架。它可以基于Spring Boot来创建独立的、可用于生产的Spring应用程序。它通过使用Spring Integration来连接消息代理中间件以实现消息事件驱动的微服务应用。Spring Cloud Stream为一些供应商的消息中间件产品提供了个性化的自动化配置实现
开篇介绍大家好,我是Java最全面试题库的提裤姐,今天这篇是中间件系列的第四篇,主要总结了中间件相关的文章;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。中间件相关的面试题到这里就结束了,下面是总结的思维导图及文章链接:
转载
2021-04-17 12:50:46
295阅读
一、为什么需要消息系统(1) 解耦
在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。
(2) 冗余
有些情况下,处理数据的过程会失败。除非数据被持久化,否则将造成丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过这一方
6 消息中间件消息中间件是分布式系统基础设施之一。消息中间件使得消息发送者不必同步等待消息接收者的响应,而是将消息发送到消息队列中,由消息消费者来异步消费。这种处理模式这种处理模式主要的应用场景有三种:异步通讯;解耦;并发缓冲。6.1 消息发送的一致性一致性是说某个动作发生前和发生后都有正确、完整的逻辑意义。那么对于消息来说,一致性是指产生消息的业务动作与消息发送的一致,业务操作成功消息一定要发出
我个人经历过五十家左右的面试,我来给大家说一说应该会什么。 第一 个人要适应性强一些,比如让你做前端,你得可以通过自己来做简单的一些前端业务开发 第二 技术方面 熟悉springboot框架、熟悉springcloud分布式微服务框架、dubbo分布式框架、springmvc,hibernate由于映射复杂和执行效率慢,一般用的比较少了,所以可以只是了解,struts2也不能说没公司用了,但太少了
转载
2023-10-30 15:41:22
25阅读
一、什么是消息中间件 可以看成是在消息的传输过程中保存消息的容器(只保存但不做修改,把他看做日志级别的)。 消息中间件在将消息从它的源中继到他的目标时充当中间人的作用。通过提供消息队列模型和消息传递机制,可以在分布式环境下进行扩展进程间的通信。开发人员不需要考虑网络协议和远程调用的问题,只需要通过各消息
1、为什么要使用消息中间件?一般说法:解耦与复用异步削峰以登录举例说明,假设登录服务和认证服务不是同一个系统,登录服务收到登录请求后调用认证服务的接口认证用户名、密码,需要等待认证服务的结果,认证通过后通知其他应用服务做相应的处理。这个过程对于登录服务来说,只有认证服务是需要强依赖的,是一种典型的调用关系,而登录服务与其他应用服务之间如果也使用这种调用关系,它们之间的依赖关系会使得整体架构非常复杂
转载
2023-09-08 23:53:06
34阅读
开篇介绍大家好,我是Java最全面试题库的提裤姐,今天这篇是中间件系列的第一篇,主要总结了RabbitMQ相关的问题;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。Q:什么是RabbitMQ?为什么使用RabbitMQ?有什么好处?RabbitMQ是一款开源的,Erlang编写的,基于AMQP协议的,消息中间件;可以
转载
2021-04-17 12:49:01
249阅读
开篇介绍大家好,我是Java最全面试题库的提裤姐,今天这篇是中间件系列的第二篇,主要总结了RocketMQ相关的问题;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。Q:多个MQ如何选型?RabbitMQerlang开发,对消息堆积的支持并不好,当大量消息积压的时候,会导致 RabbitMQ 的性能急剧下降。每秒钟可以
转载
2021-04-17 12:49:48
161阅读
开篇介绍大家好,我是Java最全面试题库的提裤姐,今天这篇是中间件系列的第三篇,主要总结了Kafka相关的问题;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。Q:Kafka中的ISR、AR代表什么?ISR的伸缩指什么?ISR:In-Sync Replicas 副本同步队列AR:Assigned Replicas 所有
转载
2021-04-17 12:50:13
170阅读
J2EE初学者需要理解的问题 一、J2EE提出的背景 1、 企业级应用框架的需求 在许多企业级应用中,例如数据库连接、邮件服务、事务处理等都是一些通用企业需求模块,这些模块如果每次再开发中都由开发人员来完成的话,将会造成开发周期长和代码可*性差等问题。于是许多大公司开发了自己的通用模块服务。这些服务性的软件系列统称为中间件。 2、 为了通用必须要提出规范,不然无法达到通用 在上面的需求基础之上,许
开启生产者确认机制,确保生产者的消息能到达队列(config机制保证消息正确到达交换机、return
原创
2023-06-02 08:58:07
159阅读