day56_java_基础巩固

简介: 自己所掌握的基础知识加以巩固和记录!希望大家点赞收藏并能给予鼓励和支持!有任何建议或者帮助也可以来哦!!!虽然有些干货知识很通俗,但也是自己的必经之路i,加油!!!

RocketMQ 如何做负载均衡?


通过 Topic 在多 Broker 中分布式存储实现。


(1)producer 端

发送端指定 message queue 发送消息到相应的 broker,来达到写入时的负载均衡

提升写入吞吐量,当多个 producer 同时向一个 broker 写入数据的时候,性能会下降

消息分布在多 broker 中,为负载消费做准备

默认策略是随机选择:

producer 维护一个 index

每次取节点会自增

index 向所有 broker 个数取余

自带容错策略

其他实现:

SelectMessageQueueByHash

hash 的是传入的 args

SelectMessageQueueByRandom

SelectMessageQueueByMachineRoom 没有实现

也可以自定义实现 MessageQueueSelector 接口中的 select 方法

MessageQueue select(final List<MessageQueue> mqs, final Message msg,

final Object arg);


(2) consumer 端

采用的是平均分配算法来进行负载均衡。


其他负载均衡算法

平均分配策略(默认)(AllocateMessageQueueAveragely)

环形分配策略(AllocateMessageQueueAveragelyByCircle)

手动配置分配策略(AllocateMessageQueueByConfig)

机房分配策略(AllocateMessageQueueByMachineRoom)

一致性哈希分配策略(AllocateMessageQueueConsistentHash)

靠近机房策略(AllocateMachineRoomNearby)


追问:当消费负载均衡 consumer 和 queue 不对等的时候会发生什么?

Consumer 和 queue 会优先平均分配,如果 Consumer 少于 queue 的个数,则会存

在部分 Consumer 消费多个 queue 的情况,如果 Consumer 等于 queue 的个数,那就是

一个 Consumer 消费一个 queue,如果 Consumer 个数大于 queue 的个数,那么会有部分 Consumer 空余出来,

白白的浪费了

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
传感器 机器学习/深度学习 编解码
图像配准:基于 OpenCV 的高效实现
在这篇文章中,我将对图像配准进行一个简单概述,展示一个最小的 OpenCV 实现,并展示一个可以使配准过程更加高效的简单技巧。
|
存储 NoSQL Java
什么是Cookie与Session之Session详解
什么是Cookie与Session之Session详解
1456 0
|
2月前
|
人工智能 测试技术 API
GLM 5.2深度实战:API快速集成、MIT权重配置与百万上下文能力验证
GLM 5.2是智谱AI于2026年6月推出的旗舰级大模型,凭借744B总参数MoE混合专家架构、原生支持100万Token稳定上下文窗口,以及MIT许可开源权重,成为当前开源模型领域的标杆产品。该模型不仅在长程编程、文档分析等任务中表现突出,还提供了Z.ai Coding Plan托管API与MIT开源权重两种接入路径,满足个人开发者、企业团队的不同使用需求。本文将从API快速接入、MIT开源权重本地部署、百万上下文能力实测三大核心环节,提供完整实战指南,帮助开发者高效落地GLM 5.2。
683 1
|
7月前
|
数据可视化 安全 BI
PageAdmin CMS 可视化智能表单与业务系统搭建完全指南
“无需代码,拖拽即用!PageAdmin CMS可视化智能表单系统让企业零基础搭建专业级管理系统,26种组件+智能工作流,从数据收集到BI分析一站式实现业务数字化。”
266 5
|
9月前
|
关系型数据库 Serverless 分布式数据库
阿里云PolarDB云原生数据库计费类型:Serverless详细说明
阿里云PolarDB Serverless计费模式支持秒级弹性扩缩容,按需使用CPU、内存资源,自动增减只读节点,实现成本优化。以PCU为单位,最小粒度0.5 PCU,按秒计费,结合计算包更省钱。适用于流量波动业务,详情见官网。
335 4
|
8月前
|
消息中间件 存储 监控
实时数据有哪些特点?企业该如何管理好实时数据?
企业正从“事后看”转向“实时看”数据,实时数据要求秒级甚至毫秒级响应,具备持续流入、价值衰减快、流量突增等特点。管理好它需构建四大能力:流式处理架构、全链路监控、分层服务与业务闭环。建议从痛点场景试点,逐步打造可复用的实时数据体系。
|
机器学习/深度学习 Dart TensorFlow
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:6~11(5)
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:6~11(5)
639 0
|
11月前
|
存储 缓存 安全
Python字典:从入门到精通的实用指南
Python字典如瑞士军刀般强大,以键值对实现高效数据存储与查找,广泛应用于配置管理、缓存、统计等场景。本文详解字典基础、进阶技巧、实战应用与常见陷阱,助你掌握这一核心数据结构,写出更高效、优雅的Python代码。
356 0
|
城市大脑 安全 计算机视觉
课时13:城市数据大脑介绍
阿里云与杭州市合作打造的城市数据大脑,通过智能调控红绿灯、实时视频分析交通事件,提升了道路通行效率。如今,城市大脑不仅能主动发现并处理交通事故,还能为救护车规划最优路线,从被动接警转变为积极应对,使城市交通更加顺畅和安全。交警们希望通过这一系统,让杭州变得更加美好,实现更愉快的出行体验。
850 0
|
前端开发
【CSS进阶】使用CSS gradient制作绚丽渐变纹理背景效果(中)
【CSS进阶】使用CSS gradient制作绚丽渐变纹理背景效果
520 1

热门文章

最新文章