2025年12月23日

zerofs checkpoints 试用

摘要: 以前简单说过zerofs checkpoints ,以下是一个试用 环境准备 基于了rustfs 提供s3,基本简单,参考示例部署就可以了 试用checkpoints 创建 ./zerofs checkpoint create -c zerofs.toml firsr_snap 效果 <jemall 阅读全文

posted @ 2025-12-23 08:00 荣锋亮 阅读(3) 评论(0) 推荐(0)

2025年12月22日

rustfs 集成zerofs 测试

摘要: 在以前版本对于zerofs 集成进行测试发现是有问题的,在新版本中发现rustfs 可以直接作为zerofs 的存储了,以下是一个简单的测试 rustfs 启动 我使用了rustfs 1.0.0-alpha.73,直接本地运行, 之后需要创建zerofs 桶,注意账户是rustfsadmin ./r 阅读全文

posted @ 2025-12-22 08:00 荣锋亮 阅读(7) 评论(0) 推荐(0)

2025年12月21日

lakekeeper 基于rust 的iceberg rest catalog服务

摘要: lakekeeper是基于rust开发的iceberg rest catalog 服务 包含的特性 多租户能力 高可用以及灵活的水平扩展能力 完备的访问控制能力,默认基于了OenFGA * change events 支持,基于cloudevents的通知 原生k8s 支持 说明 rest cata 阅读全文

posted @ 2025-12-21 11:22 荣锋亮 阅读(6) 评论(0) 推荐(0)

zerofs的checkpoints 功能

摘要: checkpoints 是一个很有意思同时很方便的功能,checkpoints 是只读的,同时可以方便的进行数据维护 配置 当前checkpoints 需要开启rpc [servers.rpc] addresses = ["127.0.0.1:7000"] unix_socket = "/tmp/z 阅读全文

posted @ 2025-12-21 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年12月20日

dremio 调整codegenerator 模式

摘要: dremio 内部具体执行实际是基于代码生成处理的,默认首选的是Gandiva, 但是可以直接调整为java 这样可以规避一些兼容问题 参考配置 sql 模式 ALTER SESSION SET "exec.preferred.codegenerator" = 'Java'; * 支持key exe 阅读全文

posted @ 2025-12-20 08:00 荣锋亮 阅读(4) 评论(0) 推荐(0)

2025年12月19日

dremio arm架构cpu 查询卡顿问题简单说明

摘要: dremio 对于部分sql 的处理会使用Gandiva 基于llvm 的处理机制,但是在一些arm 架构系统中会有问题,造成sql 执行会有卡顿的问题 解决方法 添加白名单,禁用一些加速,具体是添加exec.disabled.gandiva-functions key,函数通过; 分割,alter 阅读全文

posted @ 2025-12-19 08:28 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年12月18日

dremio mysql utf8mb4 union 字符编码问题四

摘要: 还是上次的问题,解决方法就是修改官方不太对的连接池使用 参考修改 核心是POOLED_DATASOURCE 修改为org.mariadb.jdbc.MariaDbPoolDataSource 如何编译 可以通过arp 扩展,直接反编译代码,然后编译(因为依赖都有了,编译肯定没问题) 替换 通过jar 阅读全文

posted @ 2025-12-18 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年12月17日

dremio mysql utf8mb4 union 字符编码问题三

摘要: 以前说过此问题,但是在实际测试中发现一个比较有意思的问额,连接回收管理有问题,会造成连接一直创建不释放,然后的问题就是服务不稳定,之后通过jprofiler 验证发现就是连接一直不释放,创建的比较多 说明 jdbc 驱动切换还是应该谨慎一些,做好测试,当然使用好了连接池问题应该也不大,核心是drem 阅读全文

posted @ 2025-12-17 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年12月16日

dremio mysql utf8mb4 union 字符编码问题二

摘要: 以前说明通过自己扩展调整支持utf8mb4编码的,但是发现mariadb 从3.5.0 开始版本也支持配置connectionCollation参数了 通过直接替换dremio 内部的3.0.5 版本的到最新,同时配置connectionCollation 排序编码的问题也就可以解决了 说明 以上就 阅读全文

posted @ 2025-12-16 08:00 荣锋亮 阅读(7) 评论(0) 推荐(0)

2025年12月15日

nats 集群的修复的一些资料

摘要: 来自官方文档以及博客的一些资料,比较有用,可以看看,它的一些东西与我们一般玩法类似,目前官方文档并没有明确的写出来,部分是通过blog 输出的,推荐看看,有利于更好的使用好nats,不然出现一些问题的时候可能会比较迷茫 说明 nats 是一个好东西,但是文档写的有些太技术,集群维护的东西还是有点不是 阅读全文

posted @ 2025-12-15 08:00 荣锋亮 阅读(4) 评论(0) 推荐(0)

2025年12月14日

nats client_advertise advertise cluster_advertise 参数

摘要: nats 的几个参数还是比较有意思的,但是也比较容易误解,在leaf 节点,cluster,gateway 模式中都有这几个参数,但是不同的场景次参数意义也不太一样 cluster 模式 client_advertise 主要是在集群部署的时候,同时我们如果是在nat 环境(或者云环境),需要暴露公 阅读全文

posted @ 2025-12-14 11:57 荣锋亮 阅读(10) 评论(0) 推荐(0)

2025年12月13日

dremio mysql utf8mb4 union 字符编码问题一

摘要: 因为新的不少数据库都使用了utf8mb4编码了,以前就知道有此问题,但是最近有人反馈此问题,而且影响一些操作,然后就专门研究了下,发现核心是dremio 在处理mysql 连接字符串的时候附加了一些不太一样的东西,造成sql 执行不正常,它的sql 是生成正确的,而且生成的sql 实际是可以直接运行 阅读全文

posted @ 2025-12-13 12:17 荣锋亮 阅读(3) 评论(0) 推荐(0)

2025年12月12日

记录一个dremio 物化存储异常问题

摘要: 最近碰到一个比较有意思的dremio问题,异常信息如下,造成的现象是dremio 已经无法提交任务了,基本过60s 会有如下的信息 异常信息如下 com.dremio.common.exceptions.UserException: Timed out waiting for materializa 阅读全文

posted @ 2025-12-12 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年12月11日

zerofs 多实例访问问题二

摘要: 看到最近0.18.0的发布zerofs 已经支持多实例的read-only了,上次反馈的问题也已经解决了,当前测试的现象是符合预期的,30s 左右read-only 数据会刷新在read-only 节点看到数据 说明 单写,多实例read-only 是一个很不错的功能,很值得尝试下 参考资料 htt 阅读全文

posted @ 2025-12-11 08:11 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年12月10日

ncc 动态require 被webpack的require替换的一些解决方法

摘要: 是实际存在的一个业务问题,我们希望模块是动态加载的,而不是被直接打包的 使用eval("require")处理 尽管不是很推荐,但是实际很有效,也是ncc 自己内部一些场景的玩法 module.exports = eval("require")("edgecommon"); 使用变量 将需要动态导入 阅读全文

posted @ 2025-12-10 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年12月9日

zerofs 多实例访问的问题

摘要: 尽管zerofs 支持了多实例访问,但是实际体验下来并不是很友好,主要是多reader 可见性的问题,毕竟有lsm 还需要flush 问题 如果需要立即可见,服务是需要重启,或者等待写入的数据达到可flush 的阶段,但是实际测试flush 效果并不好,反而restart read-write 节点 阅读全文

posted @ 2025-12-09 08:25 荣锋亮 阅读(5) 评论(0) 推荐(0)

zerofs 最近的一些更新

摘要: zerofs 最近还是提供了不少有意思的更新的,比如对于slatedb lsm 的配置暴露出来了,提供了read only 节点,可以实现多实例运行了(但是注意只能运行一个read-write 节点) 说明 一些问题,当然从v0.17.0 开始,对于历史版本是不兼容的,注意升级的问题,新特性还是比较 阅读全文

posted @ 2025-12-09 08:25 荣锋亮 阅读(6) 评论(0) 推荐(0)

2025年12月7日

nats 的消息调度

摘要: nats 2.12.2 支持消息调度了,但是目前实现上并不是很全,已经可以支持一些玩法了,以下简单说明下 特点 首先是基于jetstream 的,我们需要创建一个jetstream jetstream 需要开启--allow-schedules,--allow-msg-ttl 推荐也开启 publi 阅读全文

posted @ 2025-12-07 08:00 荣锋亮 阅读(13) 评论(0) 推荐(0)

2025年12月6日

nats 队列组的一些特性

摘要: nats 的队列组是一个比较有意思的功能,以下简单说明下一些特性 特性 可以实现应用的多容错 可以实现工作负载的缩放 对于消费者的扩缩容不会造成消息重复 不需要额外的配置 队列组的配置是有订阅消息的应用处理的 geo 亲缘性,尤其在进行leaf 节点或者supercluster 部署的时候,默认会选 阅读全文

posted @ 2025-12-06 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年12月5日

midwayjs typeorm 子组件模式加载实体问题

摘要: 属于一个比较常见的问题,就是我们通过子组件提供orm 访问,以及api 处理,这样业务集成就会方便不少,比如UI/API 直接可以all-in-component 解决方法 解决方法实际很多,主要是我们在配置typeorm 的时候需要一个entities的信息,解决思路可以通过子组件暴露entity 阅读全文

posted @ 2025-12-05 08:00 荣锋亮 阅读(10) 评论(0) 推荐(0)

2025年12月4日

cloudevents + jmespath 简单规则执行

摘要: 实际上属于一个简单的业务场景,数据实体基于了cloudevents,但是希望进行里边数据的check,对于不用的check 结果会有一些action(比如发送通知等),以下是一个简单实现示例 参考代码 demo.js import jmespath from "jmespath"; import { 阅读全文

posted @ 2025-12-04 08:02 荣锋亮 阅读(8) 评论(0) 推荐(0)

2025年12月3日

nats-server leaf node 通过cluster 地址进行服务reload

摘要: 实际上属于一个小技巧,就是可利用nats 的export 以及import 可以将leaf sys 账户的$SYS 共享给leaf 链接的集群账户(当然leaf 链接的时候是需要进行本地account 映射的),这样cluster 的账户就可以request leaf 节点了 参考玩法 accoun 阅读全文

posted @ 2025-12-03 08:00 荣锋亮 阅读(7) 评论(0) 推荐(0)

2025年12月2日

nats-server reload 的几种方法

摘要: nats-server 提供了几种模式可以方便的进行server load,以下简单说明下 方法 cli 模式 nats-server --signal reload 通过$SYS.REQ.SERVER..RELOAD 服务调用 注意需要时sys account 用户 nats --user sys 阅读全文

posted @ 2025-12-02 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年12月1日

nats 系统事件以及监控

摘要: 内容实际官方文档已经很全了,nats 提供了基于消息以及prometheus 还有http endpoint 的监控信息,内部基于消息的监控是很方便的 比如以前说的mqtt 状态监控的,就用消息的就很方便,以下链接提供了一些说明,可以方便使用 说明 内容就是一个整理,方便使用,详细的可以阅读链接内容 阅读全文

posted @ 2025-12-01 08:00 荣锋亮 阅读(6) 评论(0) 推荐(0)

2025年11月30日

nats leaf 节点模式与mqtt 连接状态的监控

摘要: eaf 节点可以与集群直接通信,在iot 场景,一般客户端连接的都是leaf 节点,此时如果我们希望云端进行状态监控就有点不太一样了,以下是一些玩法说明 监控玩法 具体使用什么账户以及如何监控和部署玩法有关系,同时leaf 节点的sys 与cluster 的sys 实际上并不是一个东西,能监控获取到 阅读全文

posted @ 2025-11-30 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年11月29日

nats mqtt client 连接状态监控的一些说明

摘要: 默认nats 的mqtt 支持will 消息可以实现一些场景的设备离线监控,但是对于上线场景,暂时没直接提供类似mqtt $SYS 的一些能力,但是如果希望实现复杂的暂时不能通过mqtt 标准套路解决 可选的模式 mqtt 的will 消息,只能处理断开的 通过sys 账户的$SYS.ACCOUNT 阅读全文

posted @ 2025-11-29 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年11月28日

nestjs 配置管理简单说明

摘要: nestjs 配置管理是一个独立的模块,机制上不像midwayjs的玩法,直接提供了装饰器可以快速获取,但是nestjs 是以模块的模式提供的,同时支持范型模式,当然有支持midwayjs 接口定义获取的模式(自动进行对象转换),以下是一个简单玩法 基于yaml的简单实例 内容实际来自官方文档,我做 阅读全文

posted @ 2025-11-28 08:00 荣锋亮 阅读(7) 评论(0) 推荐(0)

2025年11月27日

nestjs 静态web资源的加载

摘要: nestjs 的静态资源处理还是比较方便的,基于上与midwayjs比较类似的 参考玩法 import { Module } from '@nestjs/common'; import { ModuleBController } from './moduleb.controller'; import 阅读全文

posted @ 2025-11-27 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0)

2025年11月26日

nestjs 使用类似midwayjs 模式加载模块

摘要: midwayjs 在不少使用上实际与nestjs 是比较类似的,midwayjs 提供了一个比较有意思的玩法,就是组件化,nestjs 当然也有自己比较强大的模块化能力 参考玩法 机制上实际比较简单,核心是代码组织以及模块的导入,因为nestjs 也是提供了ioc 能力的,核心是将我们的模块impo 阅读全文

posted @ 2025-11-26 08:00 荣锋亮 阅读(12) 评论(0) 推荐(0)

2025年11月25日

nats leaf node 部署一些问题

摘要: 以前简单说过一些leaf node 的部署套路以及一些玩法,实际在如果希望提供公网能力的场景又有一些不同的玩法 一些问题 结合场景,看看nats 的leaf node 是需要公网还是直接特定网络访问,如果提供公网能力,tls 以及leaf node得advertise 很重要,否则会有安全的问题以及 阅读全文

posted @ 2025-11-25 08:00 荣锋亮 阅读(12) 评论(0) 推荐(0)

2025年11月24日

nats import & export简单说明

摘要: 服务导出(Service Export):用于请求-回复模式。一个账户将服务(即一个主题,用于接收请求并回复)导出,其他账户可以导入该服务并向其发送请求。 流导出(Stream Export):用于流消息(即发布-订阅模式)。一个账户将流(即一个主题,用于发布消息)导出,其他账户可以导入该流并接收消 阅读全文

posted @ 2025-11-24 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年11月23日

midwayjs 组件静态资源映射默认页面问题

摘要: midwayjs 组件如果包含静态资源可以实现灵活的自服务开发,midwayjs 内部基于了koa-static-cache ,实际上是支持配置首页的 但是在测试的一些效果与实际的并不太符合,以下简单说明下原因 内部机制 alias 的处理,如下,可以看到如果有配置,实际会结合配置的alias 进一 阅读全文

posted @ 2025-11-23 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年11月22日

pg_lake 基于pg 的iceberg &数据湖访问

摘要: pg_lake 是Snowflake开源的基于pg 的iceberg 以及数据湖访问方案,内部来源于crunchy data 的技术方案(有用到duckdb) 参考架构 可以看到有一个独立的pg_duck_server 内部使用的是duckdb,内部pg_lake包含了不少组件 说明 目前官方提供了 阅读全文

posted @ 2025-11-22 08:00 荣锋亮 阅读(25) 评论(0) 推荐(0)

2025年11月21日

package-json 通过编程模式操作package.json的npm包

摘要: package-json 是npm 团队提供的一个通过编程模式操作package.json的包,与通过json 读取以及序列化操作相比简单不少 参考玩法 可以自己指定pacakge.json 文件,或者明确加载的位置 参考处理 先加载,然后更新,之后是save const PackageJson = 阅读全文

posted @ 2025-11-21 08:00 荣锋亮 阅读(4) 评论(0) 推荐(0)

2025年11月20日

quart python async web micro框架

摘要: quart python async web micro框架 支持的特性 渲染html 模版 编写rest full api 提供websocket 服务 流处理request 以及response 说明 当前官方的说法是quart 是对于Flask web 框架的asyncio 重新实现,值得尝试 阅读全文

posted @ 2025-11-20 08:12 荣锋亮 阅读(3) 评论(0) 推荐(0)

2025年11月19日

midwayjs 动态加载组件的一种方法

摘要: midwayjs 的组件特性是一个很不错的特性,可以让我们开发的应用模块化比较强,一般我们都是明确指定加载的组件的 实际上通过简单的动态加载也是一个很不错的玩法,可以实现动态化,以下简单说明下玩法 核心点 就是通过require 动态导入,让后作为参数传递就行了 参考玩法 就是一个简单示例,实际可以 阅读全文

posted @ 2025-11-19 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0)

2025年11月18日

midwayjs 组件配置静态资源

摘要: midwayjs组件实际上是支持应用的所有特性的,但是我们可能希望开发的组件也包含静态资源,这样资源直接打包在npm包中,用户安装之后就能使用了,以下是一些说明 关键点 因为midwayjs 静态资源的支持是基于static_file 扩展的,就需要安装扩展以及配置相关的路径, 为了方便并不推荐直接 阅读全文

posted @ 2025-11-18 08:00 荣锋亮 阅读(6) 评论(0) 推荐(0)

2025年11月17日

midwayjs 自定义组件开发

摘要: 实际上官方已经明确说明了自定义组件开发的一些技巧了,我主要简单说明i下一些问题 一些问题 自定义组件就是一个小的应用 如果需要注册controller 注意在index.ts 中对于controller 的export,不然是不能生效的 如果是多模块的项目,注意需要构建 自定义组件是可以直接使用主应 阅读全文

posted @ 2025-11-17 08:00 荣锋亮 阅读(19) 评论(0) 推荐(0)

2025年11月16日

nestjs 通过名称获取ioc服务

摘要: nestjs 一个比较强大的功能就是ioc,一般如果大家都使用ts 就比较简单,但是我们可能希望使用名称获取注册的服务,以下是一个简单说明 机制 核心就是通过注册提供一个token名称,之后通过这个名称获取服务 参考使用 注册服务 import { Module } from '@nestjs/co 阅读全文

posted @ 2025-11-16 08:00 荣锋亮 阅读(12) 评论(0) 推荐(0)

2025年11月15日

typebox json schema 构建工具

摘要: typebox 是一个json schema 类型构建工具,可以实现方便的类型生成,同时这个项目包含了好几个子包,也是很值得学习使用的 一个简单玩法 参考示例 import Type from 'typebox' const T = Type.Object({ id: Type.Number(), 阅读全文

posted @ 2025-11-15 08:00 荣锋亮 阅读(20) 评论(0) 推荐(0)

导航