自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lincoln 的专栏

在银川混迹的技术偏执狂^_^

  • 博客(223)
  • 资源 (1)
  • 收藏
  • 关注

原创 JAiRouter v1.1.0 发布:把“API 调没调通”从 10 分钟压缩到 10 秒

v1.1.0 只干了一件事——把 Postman 搬进控制台,让你秒级验证网关后端到底通不通。过去 40 天,我们收到最多的工单不是“熔断失效”,而是:“我新接了一个模型,curl 能跑,网关 502,到底谁的问题?打开 Postman复制网关 URL填 Authorization改 HTTP Header对比返回值平均耗时 8-12 分钟——还要在内外网跳来跳去。于是我们在控制台里塞了一个「API 测试试验场选实例 → 写消息 → 点发送 → 看结果,全程不出浏览器不带令牌。

2025-10-28 16:22:33 726

原创 jVector:高效向量搜索库

信息检索中,单词可表示为特征向量。例如,"apple"可向量化为[0.98,0.2],表示其作为"水果"的概率很高,而具有"蓝色"属性的概率较低。通过距离函数计算,我们可以找到相似的向量,如"banana"可能表示为[0.94,0.1]。向量搜索的核心就是高效准确地找出相似向量。本文展示了jVector通过HNSW和DiskANN实现的高效向量搜索能力,包括索引构建和查询操作。该库为大数据场景下的相似性搜索提供了可靠解决方案。

2025-10-24 11:15:22 408

原创 JAiRouter:解决从单卡到集群推理服务的演进痛点

JAiRouter是针对大模型推理场景设计的轻量级网关,解决了单卡到集群演进中的核心痛点。通过OpenAI接口归一化,统一了Ollama/vLLM等异构框架的访问;内置负载均衡、熔断、限流等治理能力,替代传统Nginx+Spring Cloud的多组件方案。在Spring AI架构中实践显示:开发效率提升60%(代码量减少),运维成本下降40%(组件数4→1),并实现模型感知的智能路由。该方案为AI推理服务提供了开箱即用的生产级流量治理能力,特别适合从实验环境向集群化部署过渡的团队。

2025-10-17 16:10:22 648

原创 JAiRouter v1.0.0 正式发布:企业级 AI 服务网关的开源解决方案

从 2025 年 9 月 6 日第一次把 .git 推到 GitHub,到今天 10 月 16 日——短短 40 天 ⏳,一个人 🧑‍💻 包揽架构 🏗️、编码 ⌨️、布道 📣,把 13 个模块、356 文件、3.6 万行“能跑就行”的草稿,熬成可灰度的 1.0.0 🚀。167 次提交 📊,绿点排成单人栈 trace;+48 757 / −12 333 行增删,没有 merge 花活 🈚,没有 squash 造假,每一次 push 都留在历史里供人检阅 👀。平均 24 h 4.2 次提交

2025-10-16 17:10:09 719

原创 Java 25 发布,性能提升与新特性全解析

Java 25 于 2025 年 9 月发布,带来多项重要更新:1)模块导入声明(JEP 511)允许通过import module M导入模块所有公共类型,优化大型项目依赖管理;2)紧凑源文件(JEP 512)支持省略类声明并允许实例主方法,降低学习门槛;3)灵活构造函数体(JEP 513)允许构造器调用前执行代码,解决父类构造器调用子类方法时的初始化问题。此外,新增java.lang.IO类简化基础I/O操作。这些改进使Java更易用且安全,同时保持向后兼容性。

2025-10-15 17:45:19 1133

原创 洞见:强类型 vs 弱类型,AI 编程时代,谁更适合大规模项目?

文章摘要:本文探讨AI编程时代中,强类型语言(如Java)相比弱类型语言(如Python/JavaScript)的优势。研究发现,强类型语言的类型约束能显著提升AI生成代码的质量:1)类型注解作为明确文档,减少AI推理不确定性;2)编译时检查降低"幻觉"错误;3)跨文件引用更可靠。虽然弱类型语言在快速原型开发中仍有优势。

2025-10-11 16:33:22 879

原创 JGraphlet:一个简洁强大的Java任务流水线构建库

JGraphlet:简洁高效的Java任务流水线构建库 JGraphlet是一个轻量级、零依赖的Java库,专门用于构建和管理任务流水线。其核心设计基于图形模型,将任务视为节点,连接关系作为边,形成有向无环图(DAG)。该库提供两种任务类型:异步Task和同步SyncTask,支持混合使用。JGraphlet具有明确的API设计,支持扇入/扇出模式,通过PipelineContext实现任务间数据共享。作为AutoCloseable资源,它能确保安全关闭,并默认采用异步执行方式。

2025-10-11 15:11:43 837

原创 JaiRouter 多版本配置管理:一个轻量级多版本配置实现思路

本文介绍了一种轻量级多版本配置管理方案JaiRouter,通过将版本号直接嵌入文件名(如config@version.json)实现快速配置回滚。核心思路包括:1)版本化文件存储;2)原子化回滚操作;3)纯文件系统实现。该方案适用于单节点场景,支持万级版本量,具有代码简洁(仅需Jackson依赖)、调试方便等优点,但需注意分布式场景或大规模数据时应切换至专业方案。作者已将该功能开源至JAiRouter项目。

2025-09-26 15:47:36 401

原创 JAiRouter 0.9.0 前瞻:让大模型网关从“能用”走向“好用”

《JAiRouter 0.9.0前瞻:从配置文件到可视化管理的演进》介绍了即将发布的大模型网关新版本。尽管GitHub关注度不高,团队仍坚持迭代,0.9.0版本已完成基础框架和核心功能开发,包括登录、仪表盘、服务类型/实例管理等模块。新版重点将运维配置从文件迁移至浏览器界面,实现"5分钟接入新服务"的目标。文章展示了5张开发中UI截图,演示了服务配置的可视化操作流程。该版本定位为"搭建脚手架"的过渡阶段,旨在提升用户体验和配置效率。

2025-09-19 15:28:49 358

原创 JAiRouter单仓一体架构深解:前后端分离开发与Maven一体化构建的最佳实践

JAiRouter单仓一体架构解析:前后端一体化构建实践 本文介绍了JAiRouter项目采用的前后端分离但代码仓库合并的架构方案,通过frontend-maven-plugin实现Node/NPM与Maven工具链的无缝整合。文章详细阐述了该架构的目录布局、核心构建流程、开发期代理配置等关键技术点,并提供了构建性能优化、多架构镜像生成等实用技巧。实践表明,该方案使首次构建时间从5分20秒降至2分45秒,镜像体积减少23%,同时支持单命令生成多架构镜像。项目提供开箱即用的pom.xml模板,开发者可直接集成

2025-09-19 12:02:05 1106

原创 JAiRouter GitHub Actions 自动打包发布镜像到 Docker Hub 技术揭秘

JAiRouter 项目通过 GitHub Actions 实现自动化 Docker 镜像构建与发布。该方案采用多架构支持(amd64/arm64),结合 Maven 缓存和 Docker Buildx 技术,显著提升构建效率。核心功能包括动态版本提取、语义化标签生成、安全凭证管理和本地复现支持。工作流在 Release 创建时自动触发,完成代码检出、依赖安装、跨平台构建和镜像推送全流程。特别优化了缓存机制和标签策略,确保构建速度快、版本管理清晰。提供了完整的 YAML 模板,开发者可直接复用该方案实现类似

2025-09-12 18:41:36 877

原创 JAiRouter 0.8.0 发布:Docker 全自动化交付 + 多架构镜像,一键上线不是梦

摘要: JAiRouter 0.8.0发布,实现全自动化Docker交付,支持多架构镜像(amd64/arm64)。新版本提供开箱即用的CI/CD流程,2分钟自动发布到Docker Hub;内置安全配置(非root用户、只读文件系统)、预集成监控(Prometheus+Grafana)和结构化日志。一键启动命令支持网关+监控全家桶部署,镜像仅187MB。生产级Docker-Compose模板包含资源限制、健康检查等最佳实践。后续版本将增加Web控制台和多租户功能。

2025-09-12 18:33:16 984 2

原创 JAiRouter 0.7.0 发布:一键开启 OpenTelemetry 分布式追踪,链路性能全掌握

JAiRouter 0.7.0 发布,提供开箱即用的分布式追踪功能,支持零代码改动接入OpenTelemetry。新版本包含日志/Jaeger/Zipkin/OTLP四种导出器,三种采样策略(比率/规则/自适应),并实现全链路异步导出与内存保护(P99延迟<0.5ms)。提供生产级配置模板,支持自适应采样和性能保护机制,同时暴露关键指标到Prometheus。升级完全兼容现有系统,配置独立且灵活,文档包含快速入门和生产部署指南。

2025-09-05 21:00:00 1008

原创 JAiRouter 配置文件重构纪实 ——基于单一职责原则的模块化拆分与内聚性提升

本文记录了JAiRouter配置文件的模块化重构过程。针对单体YAML文件导致的配置管理混乱问题,通过SRP原则将600余行配置拆分为7个功能模块(服务器、业务、观测、安全等),采用spring.config.import实现静态织入。重构后配置优先级保持6级覆盖机制,目录结构清晰度提升,使定位配置时间从400+行搜索缩短至5分钟。文档提供了三步迁移指南并解答了环境变量覆盖、动态API兼容性等社区关切问题,最终实现"容易改对、难改错"的配置管理目标。

2025-09-05 17:00:56 844

原创 JAiRouter 0.6.0 重磅发布:认证鉴权 + 数据脱敏 ,生产级安全网关一步到位!

JAiRouter 0.6.0发布重点强化AI网关安全能力,新增API Key认证、JWT认证和数据脱敏三大核心功能。该版本通过零代码侵入方式实现生产级安全防护,支持多级权限管理、令牌刷新机制和双向数据脱敏等特性。系统内置10+敏感数据识别模式,集成Prometheus监控指标,并提供详细配置指南和安全最佳实践。升级后用户只需简单配置即可启用完整安全功能,无需修改业务代码。下一步计划将推出多租户和审计报表功能,持续提升AI应用安全防护能力。

2025-09-01 17:20:33 370

原创 JAiRouter 安全架构大起底:为什么 V0.6.0 同时拥抱 API Key 与 JWT?

JAiRouter V0.6.0 发布全新安全架构,同时支持 API Key 和 JWT 认证机制。API Key 适用于机器身份认证,具备细粒度权限控制和三级缓存优化;JWT 则针对用户会话提供短期令牌和实时权限更新。两种认证方式可组合使用,通过 RBAC 引擎实现最小权限原则。新版本还引入双向数据脱敏功能,自动处理敏感信息。该架构兼顾高性能与安全性,满足企业级 AI 网关的需求。

2025-08-28 11:48:08 668

原创 JAiRouter 0.5.0 上线:所有文档迁入 GitHub Pages,一键直达知识库

JAiRouter 0.5.0 发布:文档全面迁移至 GitHub Pages 本次更新将项目文档集中托管至 GitHub Pages,实现自动构建、实时更新和永久访问(lincoln-cn.github.io/JAiRouter)。新特性包括: 一站式文档:集成安装、配置、监控指南 多端适配:支持搜索/双语/深色模式/多版本切换 本地离线阅读:通过docs-manager脚本一键启动 自动化部署:GitHub Actions实现代码与文档同步更新 项目采用Material主题,内置版本追踪功能。

2025-08-26 10:21:55 397

原创 JAiRouter 架构揭秘:一个面向 AI 时代的响应式网关设计

JAiRouter 是一个面向 AI 时代的响应式网关设计,旨在解决大模型即服务(MaaS)时代业务系统对接多种后端(如 GPUStack、Ollama、vLLM、OpenAI 等)时面临的协议差异、流量不均、故障放大和配置漂移等痛点。它通过统一的网关实现流量调度、故障自愈和动态配置管理,整体架构分为客户端层、网关层、适配器层和后端服务层。JAiRouter 的核心模块包括控制器层、服务层、适配器层、负载均衡层、限流层、熔断层和存储层,支持多种策略插件化,易于扩展。技术栈基于 Java 17、Spring

2025-08-18 16:14:03 544

原创 JAiRouter 0.4.0 正式发布:监控指标 + Prometheus + 告警通知,运维“一眼看穿”

JAiRouter 0.4.0版本正式发布,重点增强了AI网关的可观测性功能。该版本提供20+条内置告警规则和4大监控仪表板,支持Prometheus指标采集和多渠道告警通知。通过简单三步即可完成部署,无需修改代码即可实现全链路监控,涵盖系统、业务和基础设施指标。新版本默认包含JVM、调用成功率、限流熔断等关键指标的监控,并支持邮件、Slack、钉钉等多种告警方式。官方还预告了后续版本将完善文档和日志追踪功能。项目已开源,欢迎开发者参与贡献。

2025-08-18 11:38:38 441

原创 JAiRouter 0.3.1 加速发布:一周一迭代,全力冲刺生产可用!

JAiRouter 0.3.1版本加速发布,采用"周更"节奏快速迭代,仅5天就完成从0.2.1到0.3.1的升级。本次更新重点解决三大痛点:构建速度慢(依赖下载从8分钟降至45秒)、部署复杂(提供200MB多阶段Docker镜像)和国内网络问题(支持阿里云镜像源)。新版本提供一键部署方案,5分钟即可完成网关部署,并公开了未来开发路线图。团队持续优化,欢迎开发者通过GitHub参与贡献。

2025-08-15 10:30:47 754

原创 JAiRouter 0.2.1 更新啦:内存优化 + 配置合并 + IP 限流增强,运维体验再升级

JAiRouter 0.2.1版本带来三大核心优化:内存管理方面新增限流器自动清理机制,显著降低长期运行内存占用;配置管理实现RESTful接口自动合并YAML文件,支持扫描、预览、执行等一键操作;IP限流增强代理场景支持,自动识别X-Forwarded-For等Header提取真实IP。本次升级保持对0.2.0版本的完全兼容,新增单元测试覆盖率达85%+,使AI网关运维更轻量、稳定、省心。项目已开源,欢迎开发者参与贡献。

2025-08-12 10:46:24 388

原创 JAiRouter 0.2.0 更新啦:动态配置 + 限流熔断 + 持久化,真正生产可用的 AI 网关

JAiRouter 0.2.0 发布:生产级 AI 网关升级 本次更新将 JAiRouter 从实验性工具升级为生产可用 AI 网关,主要增强: 动态配置:通过 REST API 实现服务实例热更新,无需重启 流量控制:三层限流(服务/实例/IP)+ 熔断降级机制 稳定性提升:新增配置持久化(文件/内存双模式)兼容性:保留 0.1.x 配置格式,支持平滑升级 核心改进使网关具备处理突发流量、实例故障等生产场景能力,现已在 GitHub 开源。

2025-08-08 17:56:15 1142

原创 JAiRouter:让推理引擎彻底消失的 OpenAI 协议网关

JAiRouter:AI推理引擎的统一OpenAI协议网关 JAiRouter是一个25MB的Spring-Boot应用,可将Chat/Embedding/Rerank/TTS/STT/文生图/图生图等AI服务统一转换为OpenAI协议。它解决了不同推理引擎(如vLLM、Ollama、Xinference等)协议不统一的问题,前端无需修改代码即可切换后端服务。支持随机、轮询、最少连接、IP哈希等多种负载均衡策略,并能根据权重分配请求。

2025-08-06 16:12:11 616

原创 不依赖rerank 模型排序通过使用 PostgreSQL 中的 pgvector 与 tsearch2 函数进行混合搜索提高召回率

PostgreSQL混合搜索技术简介 本文介绍了在PostgreSQL中使用pgvector插件结合全文搜索实现混合搜索的技术。混合搜索通过结合向量相似性和文本相关性搜索,能够提高搜索结果的召回率。文章详细讲解了互惠排序融合(RRF)评分方法、数据准备步骤,并提供了完整的SQL实现示例,包括单独向量搜索、全文搜索以及混合搜索的实现。同时还分析了混合搜索的执行计划和性能特点,展示了PostgreSQL如何同时利用向量索引和全文索引进行高效查询。这种技术可以在不显著增加查询延迟的情况下,提升搜索结果的相关性和质

2025-06-18 16:26:14 1094

原创 基于 Spring Cloud + Spring AI + VUE 的知识助理平台介绍以及问题

一个产品介绍,一些问题心结。在看这篇文章的各位大佬,感谢你们留出几分钟时间,来看这个产品介绍,其实重点说实话,不是这个产品怎么样。而是在最后有一个郁结在心里的几个问题,希望大佬们能给出一些建议。万分感谢。

2025-02-06 11:26:54 1186

原创 ingestr:用单行命令无缝复制数据库数据的CLI工具

ingestr 是一个命令行应用程序,它允许你使用简单的命令行标志将数据从任何源导入到任何目的地,无需编写任何代码。通过 ingestr,你可以轻松地将数据从数据库复制到其他数据库或平台,大大简化了数据迁移和集成的过程.

2025-02-06 10:35:42 461

原创 StatiCrypt:为静态网站提供密码保护

StatiCrypt 是一个强大的工具,它为静态网站提供密码保护功能。该项目无需服务器端支持,即可实现对 HTML 页面进行密码认证访问的功能。使用 AES-256 加密算法和您设定的密码,对需要保护的页面进行加密。生成的页面包含密码输入框,只有在输入正确的密码后,才会显示原始的 HTML 页面内容。可以!复制,修改以适应您的风格,并使用标志指向您的模板文件。

2024-12-09 11:13:44 1363

原创 CodeFlow - 代码库一键可视化

CodeFlow是一个开源平台,旨在帮助开发者、团队和组织快速掌握任何代码基础。无论你是在使用流行的编程语言如Python、C++、Java、JavaScript,还是更专业的语言如Rust、Swift或Kotlin,CodeFlow都能提供即时的代码结构、依赖关系和关键洞察的概览。

2024-12-09 11:11:16 1555

原创 Ubuntu 双网卡服务器配置Bond4模式指南

在最近一次机房服务器的部署中,我们遇到了一个不同于以往的配置需求。通常,业务系统会要求使用双网线并配置bond0,以实现主从网卡的轮番使用。然而,这次网络管理员提出了使用bond4模式,即链路聚合的要求。为了满足这一需求,我们查阅了相关资料,并发现了bond配置的不同方法。特别地,Ubuntu系统与CentOS在bond配置上存在差异,Ubuntu主要使用bond0,但通过不同的转发策略可以实现类似bond4的模式。要配置bond4模式,我们需要修改Ubuntu的netplan配置文件。

2022-08-19 17:57:25 1655

原创 Markdown MathJax 恒不等于输入指南

在撰写数学相关的文章时,我们经常需要使用各种数学符号来表达精确的数学关系。其中,“恒不等于”是一个重要的符号,它表示两个数学表达式在所有情况下都不相等。在Markdown中,通过MathJax可以方便地插入这些数学符号,但正确的使用方法并不总是显而易见。

2021-10-12 11:26:32 2153

原创 apache net FTP Client 通过 Http 代理访问

因为特殊原因,需要在服务器上安装一个代理程序,通过代理程序才能访问到安全域内的一台指定IP服务器。该服务器上安装了FTP服务,需要用程序读写FTP上的文件。之前在不使用代理程序的服务器上测试FTP连接,没有任何问题,换到这台服务器上有问题,所以记录一下处理过程。

2021-03-01 15:50:29 2182 1

原创 ubuntu下重置mysql的Root密码

测试环境中有一部分数据需要导出,结果时间太长了,忘记了密码。没办法只好在ubuntu下重置Mysql的密码。

2021-01-31 12:08:59 862 1

原创 MicroK8s 引起的 kubadm init 失败,端口占用

前言今天在ubuntu 20error execution phase preflight: [preflight] Some fatal errors occurred: [ERROR Port-10259]: Port 10259 is in use [ERROR Port-10257]: Port 10257 is in use [ERROR Port-10250]: Port 10250 is in useMicroK8s...

2020-12-29 09:36:18 1285

原创 CentOS 项目的开发重心将从CentOS Linux 转向 CentOS Stream

前言在即将到来的一年,CentOS 项目的开发重心将从CentOS Linux 转向 CentOS Stream。CentOS 组织的官方bloghttps://blog.centos.org/2020/12/future-is-centos-stream/文章目录前言CentOS Linux 7、8 的未来CentOS Linux 和 CentoOS StreamCentOS StreamCentOS LinuxCentOS Linux 7、8 的未来CentOS 8将在2021年结束支持

2020-12-09 10:33:20 1230

原创 树梅派3B Android Things 一键烧录

Android Things 傻瓜烧录前言Android things 是Google 于2016年提出的物联网操作系统概念。2018年,终于推出了1.0的release版本。今天就来给大家介绍一下在树梅派3B上的傻瓜烧录系统的方法。

2020-12-01 14:41:09 726

原创 软考-架构师-第七章-系统规划 第四节 新旧系统的分析和比较 (读书笔记)

版权声明主要针对希赛出版的架构师考试教程《系统架构设计师教程(第4版)》,作者“希赛教育软考学院”。完成相关的读书笔记以便后期自查,仅供个人学习使用,不得用于任何商业用途。文章目录版权声明第四节 新旧系统的分析和比较遗留系统特点遗留系统的评价方法启动评价商业价值评价概要级评价外部环境评价应用软件评价分析评价结果遗留系统的演化策略淘汰策略继承策略改造策略集成策略第四节 新旧系统的分析和比较遗留系统特点系统虽然能完成企业中许多重要的业务管理工作,但已经不能完全满足要求。一般实现业务处理电子化及部分企

2020-10-23 17:22:46 633

原创 数据库表结构文档工具 screw

前言工作中难免需要使用到数据库文档,之前一直使用的E-R设计工具,但是文档化不够智能,不符合国人阅读的习惯,所以找啊找,在码云找到了screw。试用了一下,感觉挺不错的,给大家分享一下。文章目录前言一、screw是什么?二、使用步骤侵入式配置依赖管理Java代码生成配置插件式配置maven 插件式总结一、screw是什么?直接抄作业,哈哈,官方的gitee仓库摘要说明很清晰的说明了工具的用途。简洁好用的数据库表结构文档工具,支持MySQL/MariaDB/SqlServer/Oracle/Pos

2020-09-17 15:15:29 1475 1

原创 Docker 部署 Jenkins + SonarQube 实践

前言之前一直是用实体机部署Jenkins + SonarQube,为了节省服务器资源,把之前用实体机部署的 Jenkins + SonarQube 换到Docker 部署,原因也很简单,容器定时清理之后,所有的持久化内容都会被清理,不需要像以前一样,定时写脚本处理了。文章目录前言docker compose遇到的问题vm.max_map_count [65530]解决办法docker composeversion: "3"services: sonardb: image: postgr

2020-08-21 10:27:27 722 1

原创 Spring boot JWT koltin 模块实现

前言其实今天这篇博客就是纯水,至于水的原因也是因为自己对自己有承诺,从开始写博客开始,每月都要有至少有一篇博客,从15年开始写,写到现在一共写了 180多篇原创博客,自己觉得还是收获满满。说了废话,开始正片。文章目录前言JWTJWT 组成头部载荷标准中注册的声明公共的声明私有的声明签名依赖JwtTokenUtils.ktKeyHelper.ktTokenInfo.kt特别说明,密钥存放位置GitHub 项目DemoJWTJson web token (JWT), 是为了在网络应用环境间传递声明而

2020-07-26 23:18:13 629

原创 docker 启动的 jenkins 中调用宿主机docker进行build

前言期初有这个需求感觉就跟套娃一样,你在docker 中调用docker,笑哭……这个也太逗了。不过的确遇到了,因为jenkins 容器中没有docker ,所以在编译 docker build 的时候 会出现 docker command 不存在。好吧,解决他!解决其实也很简单,把宿主机的 docker.socket 和 docker 挂在到容器内部,就可以使用了docker-composeversion: "3"services: jenkinsServer: image:

2020-06-24 17:30:50 2862 1

jdk-11.0.5_windows-x64_bin.7z

在oracle 官方网站上 下载的 windows 下的 jdk 安装程序 exe 版本。免费提供给大家使用。竟然看到资源网上有人9分。太没有分享精神了。每次自动提到6分啥情况。。。

2019-12-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除