2025年9月16日

dremio 自定义静态资源的处理

摘要: 有些时候我们希望自定义一些dremio的页面,默认dremio 对于静态资源有一些约定 参考定义 DremioServer fallbackServletHolder if (config.serveUI) { final String basePath = "rest/dremio_static/ 阅读全文

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

2025年9月15日

litserve使用zeromq 处理

摘要: litserve包含了基于多进程以及基于mq 的transport处理,默认基于多进程,同时LitServer 有一个参数可以配置基于mq的 参考配置 LitServer 支持的配置 class LitServer: """Initialize a LitServer for high-perfor 阅读全文

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

2025年9月14日

litserve LitSpec 简单说明

摘要: litserve LitSpec 是一个比较有意思,同时强大的功能,可以实现快速ai 服务开发,对于openai 的支持就是利用了此 当前参考实现 如下图,包含了openai 以及embedding 内部处理机制 实际上核心还是以前的LitAPI,支持如果对于api 配置了spec将会使用spec 阅读全文

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

2025年9月13日

litserve 同时集成OpenAISpec以及OpenAIEmbeddingSpec

摘要: litserve 的spec 是一个比较强大的能力,可以快速进行openai 兼容api的处理,这样我们就可以提供自己的openai 兼容api 了 参考使用 demo.py import litserve as ls from litserve.mcp import MCP from pydant 阅读全文

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

2025年9月12日

just 类似make 的命令行runner

摘要: just 类似makefile 的命令行runner,但是相比makefile 简洁清晰了不少,同时也类似make的makefile 提供了一个justfile 方便编写各类命令 一个参考示例 dev: just fetch just fmt just codegen just lint just 阅读全文

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

2025年9月11日

Nugine- s3s s3 服务适配器

摘要: Nugine- s3s 是基于hyper服务实现的s3 兼容层 工作机制 如下图 说明 对于s3 api 序列化以及类型上使用了aws rust s3 sdk 通过smithy 生成的代码,原则上兼容性比较好,目前rustfs (rust s3 开源服务实现就使用了此包) 参考资料 https:// 阅读全文

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

2025年9月10日

通过litserve的多endpoint 提供mcp 服务

摘要: litserve 支持多endpoint 以及mcp了,这样我们就可以方便的基于多endpoint 提供mcp服务了,以下是一个简单试用 服务定义 安装依赖 注意当前litserve 依赖mcp python sdk,但是对于新版本支持有问题(mcp 接口调整,我发了一个pr 已经合并了,但是还没发 阅读全文

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

2025年9月9日

chainlit 支持做为mcp client 了

摘要: chainlit 从2.4.0 来时支持集成mcp server 了,机制上实际就是获取mcp 提供的tools,然后使用chainlit 的tools 调用 说明 目前chainlit 主要支持了stdio 以及sse 对于streamable-http 暂时不支持,后边介绍的详细使用 参考资料 阅读全文

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

2025年9月8日

flume rust 多生产者以及多消费者的crate包

摘要: flume是一个rust 包,实现了多生产者以及多消费者的功能,是一个比较知名的rust 包 包含的特性 支持无缓冲、带缓存、约定队列 高性能 安全 灵活,只是多线程共享,可以用来灵活的构建复杂系统通信 使用简单 支持异步,同时也可以与同步代码混用 支持类似select 模式的使用(golang 使 阅读全文

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

2025年9月7日

setuptools-rust 方便基于rust 构建python 扩展的工具

摘要: setuptools-rust 是一个setuptools扩展,可以用来方便的构建基于rust 的python 扩展,是pyo3 团队开发的,当然maturin 这个cli 也是一个比较方便的工具,使用更加方便 说明 对于使用setuptools 构建工具的,setuptools-rust 是一个不 阅读全文

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

2025年9月6日

dbt-fusion 下一代dbt engine

摘要: dbt-fusion 是基于rust 开发的下一代dbt engine,性能上会比以前基于python的快不少,同时应该可以更好的和数据分析周边的工具集成 技术上apache arrow,datafusion,adbc 等技术是核心 说明 目前二进制构建包已经提供了大家可以体验下,当然从官方的介绍来 阅读全文

posted @ 2025-09-06 11:54 荣锋亮 阅读(12) 评论(0) 推荐(0)

2025年9月5日

python 访问java 包的一些方法

摘要: 属于一个简单的记录,看到了一些不少的python 集成java 的方法记录下 一些包 py4j pyspark 就是使用了此包 pyjnius 属于kivy团队开发的,目前已经好久没更新了,但是使用还是比较简单的,而且比较轻量(pip 包来说,同时已经构建好了,直接安装就可以了) graalvm 如 阅读全文

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

2025年9月4日

object_store rust 对象存储抽象crate

摘要: object_store rust 对象存储抽象crate,最早由influxdata 开发,然后贡献给了apache arrow,提供了不少存储的抽象支持 同时社区也有一个opendal 作为bakcend 的扩展 说明 目前object_store 在rust 社区是比较火的,不少项目都有使用到 阅读全文

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

2025年9月3日

rig 基于rust的可以用来开发模块化agent的框架

摘要: rig 基于rust的可以用来开发模块化agent的框架 包含的特性 完整支持llm 会话以及嵌入工作流 支持通用抽象llm providers (openai,cohere,ollama) 以及向量存储(mongodb,sqlite,lancedb,qdrant,surrealdb) 参考架构 r 阅读全文

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

2025年9月2日

rust serde 多态问题简单说明

摘要: 日常序列化是一个比较常见的问题,以下说明下一些方法 通过type 定义使用enum 类型定义 pub mod app { use serde::{Deserialize, Serialize}; #[derive(Debug, Serialize, Deserialize)] #[serde(tag 阅读全文

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

2025年9月1日

rust maven plugin 方便构建rust cargo crates 的插件

摘要: rust maven plugin 是questdb 团队提供的一个maven rust 插件,可以方便进行cargo 包的构建,同时还提供了jni 的包(进行jni native library 加载的) 参考使用 使用比较简单,就是配置maven 的插件信息 <build> <plugins> 阅读全文

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

2025年8月31日

ort onnx rust binding 试用

摘要: onnx 的rust binding 实际有好几个,当时目前来说ort 是一个比较活跃的项目,同时支持cpu 以及gpu 参考示例 是一个yolov12的推理,实际上就是标准的套路,pre处理,推理,post 处理 * cargo.toml [package] name = "yolov12" ve 阅读全文

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

2025年8月30日

rust opencv 简单试用

摘要: 社区提供了opencv 的rust binding,以下是一个简单试用 需要的安装 rust opencv 是基于ffi binding,可以参考github 中的install md 说明 参考代码 cargo.toml [package] name = "rust-opencv" version 阅读全文

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

2025年8月29日

cargo-expand 方便查看macro 的cargo 子命令

摘要: cargo-expand 是一个cargo子命令,可以方便查看macro 实际内容,对于调试是比较方便的 参考使用 cargo expand 效果 说明 当前cargo-expand 也是有一些限制的,比如嵌套的macro 没有展开,上图也能看到,如果是大型项目可能会比较慢,实际使用还是结合场景,或 阅读全文

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

2025年8月28日

zenoh 动态plugin 的设计简单说明

摘要: zenoh 提供了一种插件化的架构设计,对于storage plugin 可以灵活的扩展(当然其他模式也是支持的,比如rest,mqtt。。。。)以下是一个简单说明(zenoh 目前是包含了静态插件以及动态插件,主要说明动态插件) 技术实现机制 技术上zenoh 对于插件的支持是基于了libload 阅读全文

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

2025年8月27日

samply 基于命令行的profile 工具

摘要: samply 是基于rust 开发的一个跨平台的profile 工具,使用上比较简单,同时机遇firefox profiler 进行可视化展示 支持的命令行 samply is a sampling CPU profiler. Run a command, record a CPU profile 阅读全文

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

2025年8月26日

rust rust_embed 方便资源嵌入到rust 应用程序中的包

摘要: rust-embed是一个自定义的derive macro,可以方便的将资源嵌入到rust 引用程序中 参考使用 use rust_embed::Embed; #[derive(Embed)] #[folder = "examples/public/"] #[prefix = "prefix/"] 阅读全文

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

2025年8月25日

rust jni 简单试用

摘要: 一般对于java jni 的开发可以直接使用c,c++,或者直接使用jna 以及jnr(直接使用java 代码就可以了,机制上还是三方库包装了一些公共的方便我们使用了),基于rust开发jni 也是一个不错的选择,比如zenoh 的java sdk (zenoh 基于rust,java sdk 使用 阅读全文

posted @ 2025-08-25 08:05 荣锋亮 阅读(21) 评论(0) 推荐(0)

2025年8月24日

napi-rs vscode debug 简单说明

摘要: 需要codelldb插件,同时注意napi-rs 项目应该是debug 模式的 参考配置 插件项目 "scripts": { "artifacts": "napi artifacts", "build": "napi build --platform", "build:debug": "napi b 阅读全文

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

2025年8月23日

napi-rs 依赖三方lib的一个问题

摘要: napi-rs 是一个快速开发node addon 的rust 工具包,很多时候我们可能希望基于rust 开发的node addon, 同时集成三方c 库,此时如果在build script 中,不明确自定构建依赖的三方包那么我们在运行node addon 的时候可能会碰到莫名的问题,解决方法实际比 阅读全文

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

2025年8月22日

基于bindgen+napi-rs 开发libeasytier-ffi node 扩展玩法简单说明

摘要: 以前开发过基于libeasytier-ffi 的各种简单sdk,同时也有基于napi-ffi 开发的node 扩展,使用以及安装上并不是很方便(napi-ffi 的问题) 以下是基于napi-rs 以及bindgen 开发一个node 扩展,集成napi-rs 完整的构建,打包,部署可以方便使用 参 阅读全文

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

2025年8月21日

通过jnr 进行native 库的调用

摘要: jnr 是一个java外部native 库使用的抽象层,可以让我们直接调用native 模块,目前jnr 提供了完整的类型映射以及内存管理能力,使用上实际与jna 基本类似,值得尝试下 easytier-ffi jnr 参考使用 定义 public class EasyTierLibraryV2 { 阅读全文

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

flapigen-rs 基于rust 开发其他语言的通信的工具

摘要: flapigen 基于rust 开发其他语言的通信,当前实现了java 以及c 语言的处理 说明 infinyon/fluvio-client-java 就使用了此工具,值得尝试下 参考资料 https://dushistov.github.io/flapigen-rs/ https://githu 阅读全文

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

2025年8月20日

chdb java sdk 的设计简单说明

摘要: chdb java sdk 是基于了jni 以及chdb c library 开发的,玩法上可以学习下 参考玩法 基于cmake 进行项目构建 对于jni 头文件的引用,chdb 直接复制到了项目中 jni native 方法只有一个 ChdbJniUtil.java 中暴露的 public sta 阅读全文

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

2025年8月19日

jna 方便的java native 访问包

摘要: jna 方便的java native 访问包,提供了灵活的native 方法到java 代码的映射,基于了 包含的特性 自动进行java 到native 方法的映射,对于主要数据类型也支持通过简单映射处理 支持不部分支持java 得平台 自动进行java string 与c 的转换 支持struct 阅读全文

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

2025年8月18日

基于jna 的libeasytier-ffi java 版本

摘要: java 的jna 是一个简化jni 开发的包,以下是基于jna开发一个libeasytier-ffi 的java 包 代码结构 如下 ├── pom.xml ├── README.md └── src ├── app.yaml ├── main │ ├── java │ │ └── com │ │ 阅读全文

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

2025年8月17日

libeasytier-ffi ctypes 集成

摘要: 主要是为了方便python 使用,基于ctypes包装一个,相比基于cffi 的安装比较方便,以下是简单说明 代码结构 代码基于flit 进行包管理 结构 ├── app.py ├── app.yaml ├── ctypes_easytier_ffi │ ├── __init__.py │ └── 阅读全文

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

2025年8月16日

easytier-ffi csharp 操作简单说明

摘要: 实际上easytier-ffi 示例代码中有一个关于csharp 操作的,只是是基于早期的DllImport 模式,实际上微软只是比较建议大家尽可能使用LibraryImport模式,一个是辅助进行代码生成,一个是内部进行了一些调用的安全处理(内部使用了一些unsafe操作,构建的时候注意开启uns 阅读全文

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

2025年8月15日

cffi easytier-ffi python 集成试用

摘要: 主要是一个简单测试,学习下cffi 集成c library 参考玩法 项目结构 ├── api_build.py // 生成代码 ├── app.py // 测试 ├── app.yaml // 测试配置 ├── easytier // 模块 │ ├── __init__.py │ ├── easy 阅读全文

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

2025年8月14日

napi-ffi 通过ffi 调用easytier-ffi c 库包

摘要: 主要是一个简单试用,使用了napi-ffi 对于easytier ffi 包进行调用 包装代码 依赖 yarn add ffi-napi ref-napi ref-struct-di easytier.js const ffi = require("ffi-napi"); const ref = r 阅读全文

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

2025年8月13日

ebitengine/purego 通过纯go 调用c函数的包

摘要: ebitengine/purego 通过纯go 调用c函数的包 优势 跨平台方便,不依赖c 编译器 快速编译 更小的二进制应用 在运行时动态加载链接 ffi 支持,调研其他语言编译共享库 说明 不少golang 项目有使用到此包,比如chdb 的golang sdk , 对于希望调用c库的golan 阅读全文

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

2025年8月12日

基于ebitengine/purego的easytier-ffi golang 包

摘要: 以前简单基于cgo 处理过easytier-ffi 的集成,以下是通过ebitengine/purego 实现一个基于purego 的集成 方法定义 实际核心是通过ebitengine/purego 进行方法注册,代码上就是标准的purego玩法 package easytier import ( 阅读全文

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

2025年8月11日

iggy 基于rust的高性能消息系统

摘要: iggy 基于rust的高性能消息系统,目前属于apache 孵化项目 包含的特性 高性能,基于append-only 持久化消息处理 高吞吐,低延迟 支持用户的认证与授权访问控制 支持多stream,topic,partition 支持多协议,quic,http,tcp 支持rest api 的操 阅读全文

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

2025年8月10日

easytier golang 集成简单试用

摘要: easytier 是基于rust 编写的,官方目前提供了ffi 包,c# 以及提供了示例了对于golang 我们基于cgo 也就可以了,以下是一个简单示例,主要是测试下golang 与easytier ffi 的集成 编译ffi 我使用的是mac 系统,先编译ffi,这个比较简单直接cargo bu 阅读全文

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

2025年8月9日

dnspyre dns benchmark 工具

摘要: dnspyre 是一个 dns benchmark 工具,提供了不少dns benchmark 模式的支持,比如udp,tcp,支持A,AAAA,CNAME,https 等查询类型,可以配置并发查询以及连接数,同时支持DoT,DoH,DoQ 等,对于输出的报告格式可以配置为json,csv 等,同时 阅读全文

posted @ 2025-08-09 08:31 荣锋亮 阅读(54) 评论(0) 推荐(0)

导航