Thingsboard源码中的OAuth2登录实现
Thingsboard 启用 OAuth2 功能
使用 [email protected] / sysadmin 账号登录 Thingsboard 系统之后,在安全 -> OAuth2.0 页面,点击OAuth2.0客户端,先创建一个客户端,这里我创建的是 Github 客户端。
使用 [email protected] / sysadmin 账号登录 Thingsboard 系统之后,在安全 -> OAuth2.0 页面,点击OAuth2.0客户端,先创建一个客户端,这里我创建的是 Github 客户端。
Uuids
UUID uuid = Uuids.timeBased();
Uuids.unixTimestamp(uuid)
UUID NULL_UUID = Uuids.startOf(0);
创建目录:
Canal 是阿里巴巴开源的一款分布式增量数据同步工具,主要用于基于 MySQL 数据库的增量日志 Binlog 解析,提供增量数据的订阅和消费。
Canal github 地址:https://github.com/alibaba/canal,目前最新版本为 1.1.8,当前的 canal 支持源端 MySQL 版本包括 5.1.x、5.5.x 、5.6.x、5.7.x、8.0.x。
分布式 ID 的生成是分布式系统中的一个核心问题,需要确保生成的 ID 全局唯一、性能高效,并且能够适应高并发和大规模的场景。以下是一些常见的分布式 ID 生成方案:
以下是一个基于本地缓存 + Redis ZSet + 定时任务的榜单方案,适用于高并发场景:
在实际项目中,区分偶发性超时和频繁超时的重试策略非常重要。偶发性超时可能是由于网络抖动或临时负载过高引起的,适合立即重试;而频繁超时则可能是系统过载或下游服务不可用,此时应避免重试,以免加剧问题。
在互联网领域,限流是指对进入系统的请求数量或频率进行控制的一种机制,以防止系统因流量暴增而过载,从而保障系统的稳定性和可用性。
今天我做了什么?
更新文章 我的VPS服务部署记录
10 1 * * * scp -r [email protected]://data/backup /Users/chensoul/Library/Mobile\ Documents/com\~apple\~CloudDocs/vps/
推荐博客 Huaiyao Jin
ThingsBoard 源码地址:https://github.com/thingsboard/thingsboard,其 .github/workflows 目录下面有两个文件:
check-configuration-files.yml:使用 python 脚本校验 yaml 文件license-header-format.yml:是给文件添加 license 并提交代码到 git 仓库