2024年RocketMQ源码解析:手把手教老婆看懂DefaultMQProducer,Redis高级项目实战

总结

虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。

架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。

如果你也想成为一名好的架构师,那或许这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。

image

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 异常描述:

MQClientException - 生产者状态非Running;未找到broker等客户端异常。

  1. createTopic

public void createTopic(String key, String newTopic, int queueNum, int topicSysFlag)

在broker上创建一个topic。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| String | 是 | | | 访问密钥。 |

| opic | String | 是 | | |

| eNum | int | 是 | 0 | (0, maxIntValue] |

| cSysFlag | int | 是 | 0 | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - 生产者状态非Running;未找到broker等客户端异常。

  1. earliestMsgStoreTime

public long earliestMsgStoreTime(MessageQueue mq)

查询最早的消息存储时间。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| MessageQueue | 是 | | | 要查询的消息队列 |

  • 返回值描述:

指定队列最早的消息存储时间。单位:毫秒。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常;线程中断等客户端异常。

  1. fetchPublishMessageQueues

public List<MessageQueue> fetchPublishMessageQueues(String topic)

获取topic的消息队列。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| c | String | 是 | | |

  • 返回值描述:

传入topic下的消息队列。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常;线程中断等客户端异常。

  1. maxOffset

public long maxOffset(MessageQueue mq)

查询消息队列的最大物理偏移量。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| MessageQueue | 是 | | | 要查询的消息队列 |

  • 返回值描述:

给定消息队列的最大物理偏移量。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常;线程中断等客户端异常。

  1. minOffset

public long minOffset(MessageQueue mq)

查询给定消息队列的最小物理偏移量。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| MessageQueue | 是 | | | 要查询的消息队列 |

  • 返回值描述:

给定消息队列的最小物理偏移量。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常;线程中断等客户端异常。

  1. queryMessage

public QueryResult queryMessage(String topic, String key, int maxNum, long begin, long end)

按关键字查询消息。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| c | String | 是 | | |

| String | 否 | null | | 查找的关键字 |

| um | int | 是 | | |

| n | long | 是 | | |

| long | 是 | | | 结束时间戳,单位:毫秒 |

  • 返回值描述:

查询到的消息集合。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常等客户端异常客户端异常。

InterruptedException - 线程中断。

  1. searchOffset

public long searchOffset(MessageQueue mq, long timestamp)

查找指定时间的消息队列的物理偏移量。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| MessageQueue | 是 | | | 要查询的消息队列。 |

| stamp | long | 是 | | |

  • 返回值描述:

指定时间的消息队列的物理偏移量。

  • 异常描述:

MQClientException - 生产者状态非Running;没有找到broker;broker返回失败;网络异常;线程中断等客户端异常。

  1. send

public SendResult send(Collection<Message> msgs)

同步批量发送消息。在返回发送失败之前,内部尝试重新发送消息的最大次数(参见_retryTimesWhenSendFailed_属性)。未明确指定发送队列,默认采取轮询策略发送。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Collection | 是 | | | 待发送的消息集合。集合内的消息必须属同一个topic。 |

  • 返回值描述:

批量消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Collection<Message> msgs, long timeout)

同步批量发送消息,如果在指定的超时时间内未完成消息投递,会抛出_RemotingTooMuchRequestException_。

在返回发送失败之前,内部尝试重新发送消息的最大次数(参见_retryTimesWhenSendFailed_属性)。未明确指定发送队列,默认采取轮询策略发送。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Collection | 是 | | | 待发送的消息集合。集合内的消息必须属同一个topic。 |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

批量消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Collection<Message> msgs, MessageQueue messageQueue)

向给定队列同步批量发送消息。

注意:指定队列意味着所有消息均为同一个topic。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Collection | 是 | | | 待发送的消息集合。集合内的消息必须属同一个topic。 |

| ageQueue | MessageQueue | 是 | | |

  • 返回值描述:

批量消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Collection<Message> msgs, MessageQueue messageQueue, long timeout)

向给定队列同步批量发送消息,如果在指定的超时时间内未完成消息投递,会抛出_RemotingTooMuchRequestException_。

注意:指定队列意味着所有消息均为同一个topic。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Collection | 是 | | | 待发送的消息集合。集合内的消息必须属同一个topic。 |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

| ageQueue | MessageQueue | 是 | | |

  • 返回值描述:

批量消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Message msg)

以同步模式发送消息,仅当发送过程完全完成时,此方法才会返回。

在返回发送失败之前,内部尝试重新发送消息的最大次数(参见_retryTimesWhenSendFailed_属性)。未明确指定发送队列,默认采取轮询策略发送。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Message msg, long timeout)

以同步模式发送消息,如果在指定的超时时间内未完成消息投递,会抛出_RemotingTooMuchRequestException_。仅当发送过程完全完成时,此方法才会返回。

在返回发送失败之前,内部尝试重新发送消息的最大次数(参见_retryTimesWhenSendFailed_属性)。未明确指定发送队列,默认采取轮询策略发送。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Message msg, MessageQueue mq)

向指定的消息队列同步发送单条消息。仅当发送过程完全完成时,此方法才会返回。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| MessageQueue | 是 | | | 待投递的消息队列。 |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Message msg, MessageQueue mq, long timeout)

向指定的消息队列同步发送单条消息,如果在指定的超时时间内未完成消息投递,会抛出_RemotingTooMuchRequestException_。仅当发送过程完全完成时,此方法才会返回。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

| MessageQueue | 是 | | | 待投递的消息队列。指定队列意味着待投递消息均为同一个topic。 |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public void send(Message msg, MessageQueue mq, SendCallback sendCallback)

向指定的消息队列异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| MessageQueue | 是 | | | 待投递的消息队列。指定队列意味着待投递消息均为同一个topic。 |

| Callback | SendCallback | 是 | | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. send

public void send(Message msg, MessageQueue mq, SendCallback sendCallback, long timeout)

向指定的消息队列异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

若在指定时间内消息未发送成功,回调方法会收到_RemotingTooMuchRequestException_异常。

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| MessageQueue | 是 | | | 待投递的消息队列。 |

| Callback | SendCallback | 是 | | |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. send

public SendResult send(Message msg, MessageQueueSelector selector, Object arg)

向通过MessageQueueSelector计算出的队列同步发送消息。

可以通过自实现MessageQueueSelector接口,将某一类消息发送至固定的队列。比如:将同一个订单的状态变更消息投递至固定的队列。

注意:此消息发送失败内部不会重试。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| ctor | MessageQueueSelector | 是 | | |

| Object | 否 | | | 供队列选择器使用的参数对象。 |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public SendResult send(Message msg, MessageQueueSelector selector, Object arg, long timeout)

向通过MessageQueueSelector计算出的队列同步发送消息,并指定发送超时时间。

可以通过自实现MessageQueueSelector接口,将某一类消息发送至固定的队列。比如:将同一个订单的状态变更消息投递至固定的队列。

注意:此消息发送失败内部不会重试。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| ctor | MessageQueueSelector | 是 | | |

| Object | 否 | | | 供队列选择器使用的参数对象。 |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

消息的发送结果,包含msgId,发送状态等信息。

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

MQBrokerException - broker发生错误。

InterruptedException - 发送线程中断。

RemotingTooMuchRequestException - 发送超时。

  1. send

public void send(Message msg, MessageQueueSelector selector, Object arg, SendCallback sendCallback)

向通过MessageQueueSelector计算出的队列异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

可以通过自实现MessageQueueSelector接口,将某一类消息发送至固定的队列。比如:将同一个订单的状态变更消息投递至固定的队列。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| ctor | MessageQueueSelector | 是 | | |

| Object | 否 | | | 供队列选择器使用的参数对象。 |

| Callback | SendCallback | 是 | | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. send

public void send(Message msg, MessageQueueSelector selector, Object arg, SendCallback sendCallback, long timeout)

向通过MessageQueueSelector计算出的队列异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

可以通过自实现MessageQueueSelector接口,将某一类消息发送至固定的队列。比如:将同一个订单的状态变更消息投递至固定的队列。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| ctor | MessageQueueSelector | 是 | | |

| Object | 否 | | | 供队列选择器使用的参数对象。 |

| Callback | SendCallback | 是 | | |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. send

public void send(Message msg, SendCallback sendCallback)

异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| Callback | SendCallback | 是 | | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. send

public void send(Message msg, SendCallback sendCallback, long timeout)

异步发送单条消息,异步发送调用后直接返回,并在在发送成功或者异常时回调sendCallback,所以异步发送时sendCallback参数不能为null,否则在回调时会抛出NullPointerException

异步发送时,在成功发送前,其内部会尝试重新发送消息的最大次数(参见_retryTimesWhenSendAsyncFailed_属性)。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待发送的消息。 |

| Callback | SendCallback | 是 | | |

| out | long | 是 | 参见_sendMsgTimeout_属性 | |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. sendMessageInTransaction

public TransactionSendResult sendMessageInTransaction(Message msg, LocalTransactionExecuter tranExecuter, final Object arg)

发送事务消息。该类不做默认实现,抛出RuntimeException异常。参见:TransactionMQProducer类。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待投递的事务消息 |

| Executer | LocalTransactionExecuter | 是 | | |

| Object | 是 | | | 供本地事务执行程序使用的参数对象 |

  • 返回值描述:

事务结果,参见:LocalTransactionState类。

  • 异常描述:

RuntimeException - 永远抛出该异常。

  1. sendMessageInTransaction

public TransactionSendResult sendMessageInTransaction(Message msg, final Object arg)

发送事务消息。该类不做默认实现,抛出RuntimeException异常。参见:TransactionMQProducer类。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待投递的事务消息 |

| Object | 是 | | | 供本地事务执行程序使用的参数对象 |

  • 返回值描述:

事务结果,参见:LocalTransactionState类。

  • 异常描述:

RuntimeException - 永远抛出该异常。

  1. sendOneway

public void sendOneway(Message msg)

以oneway形式发送消息,broker不会响应任何执行结果,和UDP类似。它具有最大的吞吐量但消息可能会丢失。

可在消息量大,追求高吞吐量并允许消息丢失的情况下使用该方式。

  • 入参描述:

| 类型 | 是否必须 | 默认值 | 值范围 | 说明 |

| — | — | — | — | — |

| Message | 是 | | | 待投递的消息 |

  • 返回值描述:

void

  • 异常描述:

MQClientException - broker不存在或未找到;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. sendOneway

public void sendOneway(Message msg, MessageQueue mq)

最后

分享一套我整理的面试干货,这份文档结合了我多年的面试官经验,站在面试官的角度来告诉你,面试官提的那些问题他最想听到你给他的回答是什么,分享出来帮助那些对前途感到迷茫的朋友。

面试经验技巧篇
  • 经验技巧1 如何巧妙地回答面试官的问题
  • 经验技巧2 如何回答技术性的问题
  • 经验技巧3 如何回答非技术性问题
  • 经验技巧4 如何回答快速估算类问题
  • 经验技巧5 如何回答算法设计问题
  • 经验技巧6 如何回答系统设计题
  • 经验技巧7 如何解决求职中的时间冲突问题
  • 经验技巧8 如果面试问题曾经遇见过,是否要告知面试官
  • 经验技巧9 在被企业拒绝后是否可以再申请
  • 经验技巧10 如何应对自己不会回答的问题
  • 经验技巧11 如何应对面试官的“激将法”语言
  • 经验技巧12 如何处理与面试官持不同观点这个问题
  • 经验技巧13 什么是职场暗语

面试真题篇
  • 真题详解1 某知名互联网下载服务提供商软件工程师笔试题
  • 真题详解2 某知名社交平台软件工程师笔试题
  • 真题详解3 某知名安全软件服务提供商软件工程师笔试题
  • 真题详解4 某知名互联网金融企业软件工程师笔试题
  • 真题详解5 某知名搜索引擎提供商软件工程师笔试题
  • 真题详解6 某初创公司软件工程师笔试题
  • 真题详解7 某知名游戏软件开发公司软件工程师笔试题
  • 真题详解8 某知名电子商务公司软件工程师笔试题
  • 真题详解9 某顶级生活消费类网站软件工程师笔试题
  • 真题详解10 某知名门户网站软件工程师笔试题
  • 真题详解11 某知名互联网金融企业软件工程师笔试题
  • 真题详解12 国内某知名网络设备提供商软件工程师笔试题
  • 真题详解13 国内某顶级手机制造商软件工程师笔试题
  • 真题详解14 某顶级大数据综合服务提供商软件工程师笔试题
  • 真题详解15 某著名社交类上市公司软件工程师笔试题
  • 真题详解16 某知名互联网公司软件工程师笔试题
  • 真题详解17 某知名网络安全公司校园招聘技术类笔试题
  • 真题详解18 某知名互联网游戏公司校园招聘运维开发岗笔试题

资料整理不易,点个关注再走吧

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

;namesrv地址为空;未找到topic的路由信息等客户端异常。

RemotingException - 网络异常。

InterruptedException - 发送线程中断。

  1. sendOneway

public void sendOneway(Message msg, MessageQueue mq)

最后

分享一套我整理的面试干货,这份文档结合了我多年的面试官经验,站在面试官的角度来告诉你,面试官提的那些问题他最想听到你给他的回答是什么,分享出来帮助那些对前途感到迷茫的朋友。

面试经验技巧篇
  • 经验技巧1 如何巧妙地回答面试官的问题
  • 经验技巧2 如何回答技术性的问题
  • 经验技巧3 如何回答非技术性问题
  • 经验技巧4 如何回答快速估算类问题
  • 经验技巧5 如何回答算法设计问题
  • 经验技巧6 如何回答系统设计题
  • 经验技巧7 如何解决求职中的时间冲突问题
  • 经验技巧8 如果面试问题曾经遇见过,是否要告知面试官
  • 经验技巧9 在被企业拒绝后是否可以再申请
  • 经验技巧10 如何应对自己不会回答的问题
  • 经验技巧11 如何应对面试官的“激将法”语言
  • 经验技巧12 如何处理与面试官持不同观点这个问题
  • 经验技巧13 什么是职场暗语

[外链图片转存中…(img-vYnX2G3X-1715005608287)]

面试真题篇
  • 真题详解1 某知名互联网下载服务提供商软件工程师笔试题
  • 真题详解2 某知名社交平台软件工程师笔试题
  • 真题详解3 某知名安全软件服务提供商软件工程师笔试题
  • 真题详解4 某知名互联网金融企业软件工程师笔试题
  • 真题详解5 某知名搜索引擎提供商软件工程师笔试题
  • 真题详解6 某初创公司软件工程师笔试题
  • 真题详解7 某知名游戏软件开发公司软件工程师笔试题
  • 真题详解8 某知名电子商务公司软件工程师笔试题
  • 真题详解9 某顶级生活消费类网站软件工程师笔试题
  • 真题详解10 某知名门户网站软件工程师笔试题
  • 真题详解11 某知名互联网金融企业软件工程师笔试题
  • 真题详解12 国内某知名网络设备提供商软件工程师笔试题
  • 真题详解13 国内某顶级手机制造商软件工程师笔试题
  • 真题详解14 某顶级大数据综合服务提供商软件工程师笔试题
  • 真题详解15 某著名社交类上市公司软件工程师笔试题
  • 真题详解16 某知名互联网公司软件工程师笔试题
  • 真题详解17 某知名网络安全公司校园招聘技术类笔试题
  • 真题详解18 某知名互联网游戏公司校园招聘运维开发岗笔试题

[外链图片转存中…(img-vrKNXHg5-1715005608288)]

资料整理不易,点个关注再走吧

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 27
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值