- 博客(298)
- 收藏
- 关注
原创 基于AOP实现Redis分布式锁
随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的Java API并不能提供分布式锁的能力。为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式锁要解决的问题!
2025-09-26 14:00:04
463
原创 MQTT 客户端编程
具体步骤如下所示:1、初始化vue项目2、安装element plus3、导入课程资料中的MqttDemo.vue页面到components文件夹下4、更改App.vue页面代码如下所示。
2025-09-12 13:59:09
872
原创 MQTT Dashboard
通常情况下,认证只是验证了客户端的身份是否合法,而该客户端是否具备发布、订阅某些主题的权限,还需要由授权系统来判断。在 EMQX 中,授权是指对 MQTT 客户端的发布和订阅操作进行权限控制。授权检查器链:1、EMQX支持多种授权检查机制:基于ACL文件(默认配置)、基于内置数据库、基于MySQL进行授权、基于 MongoDB 进行授权 、基于 PostgreSQL 进行授权 、基于Redis进行授权、基于HTTP应用进行授权 …2、EMQX 支持用户通过配置多个授权检查器构成授权链。
2025-09-12 13:55:22
1074
原创 MQTT进阶
QoS 0 是最低的 QoS 等级。QoS 0 消息即发即弃,不需要等待确认,不需要存储和重传,因此对于接收方来说,永远都不需要担心收到重复的消息。为了保证消息到达,QoS 1 加入了应答与重传机制,发送方只有在收到接收方的 PUBACK 报文以后,才能认为消息投递成功,在此之前,发送方需要存储该 PUBLISH 报文以便下次重传。
2025-09-12 13:51:50
1047
原创 Flowable进阶
(event)通常用于为流程生命周期中发生的事情建模。事件总是图形化为圆圈。在BPMN 2.0中,有两种主要的事件分类:*捕获(catching)与抛出(throwing)*事件。 定时器事件是一种在特定时间触发的事件。在Flowable中,可以通过定时器事件来实现定时执行某个任务或者触发某个流程实例,具体包括定时器启动事件,定时器捕获中间件事件,定时器边界事件,在很多的业务场景中。 定时器启动事件(timer start event)在指定时间创建流程实例。在流程只需要启动一次,或者流程需要在特定的时
2025-04-17 15:09:47
940
原创 Python语法入门教程
这是一份全面的Python语法入门教程,涵盖了注释、变量类型与操作符、逻辑运算、list和字符串、变量与集合、控制流和迭代、模块、类、继承、进阶等内容,通过详细的代码示例和解释,帮助大家快速熟悉Python语法。Python中用#表示单行注释,#之后的同行的内容都会被注释掉。使用三个连续的双引号表示多行注释,两个多行注释标识之间内容会被视作是注释。二、基础变量类型与操作符Python当中的数字定义和其他语言一样:我们分别使用+, -, *, /表示加减乘除四则运算符。这里要注意的是,在Pyth
2025-03-17 17:35:12
821
原创 规则引擎LiteFlow
在每个公司的系统中,总有一些拥有复杂业务逻辑的系统,这些系统承载着核心业务逻辑,几乎每个需求都和这些核心业务有关,这些核心业务业务逻辑冗长,涉及内部逻辑运算,缓存操作,持久化操作,外部资源调取,内部其他系统RPC调用等等。时间一长,项目几经易手,维护成本就会越来越高。各种硬代码判断,分支条件越来越多。代码的抽象,复用率也越来越低,各个模块之间的耦合度很高。一小段逻辑的变动,会影响到其他模块,需要进行完整回归测试来验证。如要灵活改变业务流程的顺序,则要进行代码大改动进行抽象,重新写方法。
2025-02-05 10:51:57
909
原创 高并发压力测试
每个业务处理完毕之后,执行一次countDown方法,指定的值每次在执行countDown方法时,对值进行-1。需要一个并发安全的计数器来操作。CountDownLatch就可以实现。主线程可以在业务处理时,执行await,主线程会阻塞等待任务处理完毕。包下的一个工具,整个工具最核心的功能就是计数器。给CountDownLatch设置一个数值。CountDownLatch就是。
2025-01-22 11:03:05
1449
原创 Flowable基础篇
FlowableUI是官方提供的,针对国内复杂的流程业务需求有时并不能很好的满足企业的工作流的需求。这时我们就可以基于bpmn.js来自定义流程设计器,官网地址:https://bpmn.io/toolkit/bpmn-js/walkthrough/开源的学习资料:https://github.com/LinDaiDai/bpmn-chinese-document/tree/master/LinDaiDai有了相关的用户信息。我们就可以来创建流程图了。这块我们需要通过建模应用程序来实现。
2024-09-20 11:21:14
1453
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3