- 博客(15)
- 收藏
- 关注
原创 Activiti7核心组件及联系解析
流程设计的逻辑抽象,通常以 BPMN 2.0 格式描述(如流程图),包含节点、连线、网关、事件等元素。:将设计好的流程模型(BPMN 文件)部署到 Activiti 引擎中,使其成为可执行的流程定义。:流程实例中当前正在执行的路径,可能对应一个活动节点或等待事件。:根据流程定义启动的具体运行实例,代表一次业务流程的执行。:部署后的流程模型在引擎中的逻辑表示,是流程的“模板”。:监听流程事件(如任务创建、流程结束)并触发自定义逻辑。:通过引擎自动推进,或由外部事件(如任务完成)触发。
2025-04-08 16:00:45
527
原创 TreeMap,LinkedHashMap ,HashMap
•性能:平均情况下,get 和 put 操作的时间复杂度为 O(1)。链表定义了迭代顺序,可以是插入顺序或者是访问顺序(最近最少使用的顺序)。•性能:get 和 put 操作的时间复杂度为 O(log n),比 HashMap 稍慢,但提供了有序性。•允许 null:不支持 null 键(除非使用特定的比较器允许 null),但允许 null 值。•内部实现:基于红黑树实现,可以按键的自然顺序或者通过提供的 Comparator 来排序。•内部实现:基于哈希表实现,使用键的哈希值来确定元素存储位置。
2025-03-26 15:30:22
306
原创 本地安装多版本Java环境
建议用命令行启动 比如 '.\elasticsearch.bat' 可以看报错信息,大概率就是版本不对或者Java路径。如果是Elasticsearch或者ZooKeeper 这些需要Java环境的中间件。比如公司用的Java8,你学新的中间件 要求Java高版本。如果版本不对或者Java路径不对 双击 bat/cmd时会一闪而过。然后修改他们配置文件中Java对应版本的路径就行了。没啥麻烦的 一个个安装,再一个个配置环境变量即可。使用时,比如idea。
2025-03-26 09:32:22
148
原创 RabbitMQUtil封装
实现功能支持延迟发送支持自定义重试策略(消息发送方,消息消费方 重试多少次 初次重试间隔秒数 退避乘数 支持重试的异常类型)支持消费发送数据落库支持动态创建 5种通讯模型 4种交换机类型 的名称自定义的 消息组件(交换机 队列 绑定关系)支持自定义 手动/自动确定机制 以及重试多次失败后向死信队列投放消息
2025-03-25 12:00:09
390
原创 RabbitMQ实战
主要介绍RabbitMQ的核心组件的核心概念、以及各种模式下如何使用。拓展延时插件、消费者的Ack机制,失败消息向死信队列投送 。MQUtil的封装。
2025-03-21 10:00:08
713
原创 排行榜系统
写在前面之前聊过积分 可以把累加积分做成排行榜 提高平台用户的积极性之前的积分表字段不少 但是对应排行有用的就两个字段 一个是用户uuid 一个是用户累计积分值 可以单独摘出来 但是对于这种数据变化比较大的业务不如直接用Redis。
2025-03-13 17:14:15
406
原创 签到系统设计
利用Redis的bitmapsetbit key offset value 就是将这个key的第offset位设置为value 其中的offset是从0开始的 value只有0/1 两个值比如 ‘切土豆用户’第1 2 8天签到 可表示为没签就不用管了。
2025-03-13 15:37:43
609
原创 调查问卷系统设计
搞个定时任务 扫表写缓存 key 问卷uuid value对应 statisticsVOList。题目的3张表就是简单的一对多对多 多的一方记录一的一方的uuid。每走一次统计 上边算一遍 不如放缓存里面 后面直接读缓存。问卷选择题的选项占比分布 问卷简答题的 高频词Top10。新增/修改/停启用调查问卷 (一下操作3个表)如果问题多 可以考虑多线程频繁执行。统计相关答题人次 提交时间区间。
2025-03-11 15:26:31
436
原创 站内消息系统设计
很多时候会群发 比如库存不足 系统发消息给有商品库存权限的运营人员 发送表里面只添加一条数据 接收表里面多条数据(包含所有有商品库存权限的运营人员)保证内容只会存储一份 删消息删的是接收表的。使用消息模版发消息 一般为系统消息 触发了某个条件 比如对应用户来说 你注册了给你发用户注册成功的消息 对于运营侧来说 比如用户买东西了 检查达到库存阈值了 发消息提醒补充库存等等。可以抽取MsgSendUtil 工具类 减少代码冗余。用户之间 或者与管理员之间 没模版 写什么发什么。做好幂等消息只发一次。
2025-03-11 11:25:38
428
原创 转盘抽奖系统设计
前端传各个奖项的概率(校验加一起100%)后端用hit_begin_value 和hit_begin_value记录 逻辑是生成一个数据看命中哪一个 返回那一块position 前端指针指到对应位置。1 抽奖并兑换奖品(先简单做成一步 但是设计到库存的话 可以两步 先抽奖拿到抽奖记录uuid 接着用户拿着抽奖记录uuid兑换奖品 这样的话需要兑换码 可以先不搞库存)2 所有用户抽奖记录分页列表(页面搞个滚动显示)库存不多可以发mq站内消息提示运营侧补充库存。每天重置次数(定时任务)库存重置(定时任务)
2025-03-11 10:55:32
284
原创 积分系统设计
积分过期定时任务 扫描流水表 只拿type为获取的且is_expire为过期的 将expire_time字段值-1 看是否小于3 可以发站内消息提醒快过期了 如果减为0 将is_expire改为 过期状态 标明这条获取的数据已过期。看似是积分也可以是 金币等虚拟道具 还可以只经验值 经验值的话没有消耗减少的概念 相当于 是累加获取积分值。向流水表新增对应过期的流水数据 type为过期 bizUuid为原数据uuid(知道是哪一条数据过期了)业务伴随添加积分的可以发mq 异步添加积分。
2025-03-11 10:28:05
312
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人