- 博客(144)
- 资源 (1)
- 收藏
- 关注
原创 启动你的RocketMQ之旅(四)-Producer启动和发送流程(下)
1.设置生产者组名,2.主题名称,3.目标消息队列的ID,4.系统标志位,5.是否批量消息6.消息重试次数,7.消息最大重试次数8.Properties(比如延迟消息)9.标志位(事务消息=4)● 请求体:msg.body消息的字节码1、检查消息● topic的名称和长度(不大于127)是否符合规范● 消息是否不为空和大小有没有超过4m● 当前topic是否允许生产者发送消息2、查找路由● 现在本地缓存中查找,如果没有再从namesrv查找。
2025-03-02 23:02:23
869
1
原创 启动你的RocketMQ之旅(二)-broket和namesrv启动流程
欢迎来到消息传递的新世界!在当今的分布式系统和微服务架构中,消息队列扮演着至关重要的角色,而 Apache RocketMQ 作为一款高性能、高可靠性的消息中间件,正逐渐成为众多开发者和企业的首选。无论你是刚刚接触消息队列的新手,还是希望深入了解 RocketMQ 的老手,这篇文章都将为你提供全面的入门指导。
2024-12-10 21:40:20
1256
原创 启动你的RocketMQ之旅(一)-基本认知
欢迎来到消息传递的新世界!在当今的分布式系统和微服务架构中,消息队列扮演着至关重要的角色,而 Apache RocketMQ 作为一款高性能、高可靠性的消息中间件,正逐渐成为众多开发者和企业的首选。无论你是刚刚接触消息队列的新手,还是希望深入了解 RocketMQ 的老手,这篇文章都将为你提供全面的入门指导。
2024-12-10 19:26:28
1098
原创 Vue3(pinia) 整合 SpringWebsocket链接url动态传参
整合vue3(pinia)和 springWebsocket!一建起飞
2024-02-24 14:45:24
1752
3
原创 探索Java的ReentrantLock:实现并发锁的强大力量
ReentrantLock是一种基于AQS框架的应用实现,是JDK中的一种线程并发访问的同步手段。它具有与synchronized类似的功能,但提供了比synchronized更强大、灵活的锁机制。可重入性:与synchronized一样,ReentrantLock也支持可重入锁。这意味着同一个线程可以多次获取同一个锁,只要在每次获取锁之前都释放了之前的锁。支持公平锁和非公平锁选择:ReentrantLock可以选择使用公平锁或非公平锁。
2023-08-27 18:58:26
379
2
原创 设计模式-工厂模式
工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。工厂模式提供了一种将对象的实例化过程封装在工厂类中的方式。通过使用工厂模式,可以将对象的创建与使用代码分离,提供一种统一的接口来创建不同类型的对象。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。
2023-08-03 18:52:32
610
原创 SpringCloudt新手开发
Springboot新手开发 基本总结==》点此跳转cloud和boot的版本对应关系Spring Cloud由众多子项目组成,如Spring Cloud Config、Spring Cloud Netflix、Spring Cloud Consul 等,提供了搭建分布式系统及微服务常用的工具,如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性token、全局锁、选主、分布式会话和集群状态等,满足了构建微服务所需的所有解决方案。总体如下。
2023-03-18 09:59:32
495
原创 设计模式——创建型模型——单列模式(8种实现)
单例模式(Singleton Pattern):属于创建类型的一种常用的软件设计模式。通过单例模式的方法创建的类在当前进程中只有一个实例。
2023-03-10 20:28:38
1090
9
原创 mysql流程控制
注意:只能用于存储程序顺序结构:程序从上往下依次执行分支结构:程序按条件进行选择执行,从两条或多条路径中选择一条执行循环结构:程序满足一定条件下,重复执行一组语句MySQL 的流程控制语句主要有 3 类。条件判断语句:IF 语句和 CASE 语句循环语句:LOOP、WHILE 和 REPEAT 语句跳转语句:ITERATE 和 LEAVE 语句。
2023-02-02 15:28:26
2464
14
原创 go语言学习笔记【一】
我们先还是看看GO语言的hello world是怎么写的吧第一行 :包声明,编写源文件时,必须在非注释的第一行指明这个文件属于哪个包,如第二行:引入包,其实就是告诉Go 编译器这个程序需要使用的包,如其实就是引入了fmt包第三行 :主函数 整个程序的入口 整个项目有且只有一个main函数;
2023-01-20 13:21:35
726
原创 【第一周学习——认识 O(N*logN) 的排序[ 归并排序 、堆排序、快速排序 ]
——认识复杂度和简单排序算法堆(Heap)是计算机科学中一类特殊的数据结构,是最高效的优先级队列。堆通常是一个可以被看做一棵完全二叉树的数组对象。
2022-12-22 15:39:58
384
原创 redis、RabbitMq整合【四 优惠卷秒杀(下)——集群下的线程并发问题,秒杀优化(异步) 】
radis和rabbitmq整合秒杀任务
2022-11-15 19:53:49
774
29
原创 仿黑马点评-redis整合【四 优惠卷秒杀(上) 】
我们使用全局id生成器我们能不能用redis来完成这个任务?代码// 1. 生成时间戳//2.生成序列号//3.拼接并返回获取时间戳//获取2022年 1月 1号 0点的秒数 LocalDateTime time = LocalDateTime . of(2022 , 1 , 1 , 0 , 0);}// 1. 生成时间戳 31位数字 单位秒 LocalDateTime now = LocalDateTime . now();
2022-11-11 17:34:26
2203
25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人