K8s 部署 TiDB

TiDB 是由 PingCAP 开发的一款开源分布式 SQL 数据库,支持事务处理和实时分析。它与 Kubernetes 的结合使得数据库能够实现云原生化,具备弹性扩展、自动故障转移等特性。 TiDB 是一个分布式数据库系统,具有以下特点: HTAP 支持:同时支持事务处理(OLTP)和分析处理(OLAP)。 高可用性:通过 Raft 协议实现数据强一致性和容错。 云原生架构:适配 Kubernetes,支持自动化管理和弹性扩展。 MySQL 兼容:支持 MySQL 协议,易于迁移现有应用。 TiDB 的核心组件包括: Read more ...

2025-03-10 tidb , mysql , k8s , kubernetes

开源跨平台终端 XPipe

XPipe 是一款开源的跨平台终端应用,支持 SSH,Docker,还支持 Kubernetes 等多种环境。 功能 支持 SSH 连接,配置文件 Docker,Podman,LXD,incus 容器 Proxmox VE Hyper-V, KVM, VMware Player/Workstation/Fusion 虚拟机 Kubernetes 集群,pods,容器 Tailscale 和 Teleport 连接 Windows Subsystem for Linux,Cygwin,和 MSYS2 Powersh Read more ...

2025-03-06 xpipe , terminal , docker , ssh , proxmox , proxmox-ve , fusion

开源 Kotlin ORM 框架 Exposed 使用说明

Exposed 是 JetBrains 在数年前推出的轻量级 ORM 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。 Exposed 是基于 JDBC 实现,屏蔽了底层建立数据库连接,编写 SQL,操作数据,关闭数据库连接的操作,只需要关心数据操作。 Exposed 提供了两种形式 API,面向 DSL 的 API,面向对象的 API。 特点 纯 Kotlin 实现 类似 SQL 的静态类型化语言,可以轻松查询数据库 减少样板代码 支持非常多的数据库,H2,MySQL,MariaDB,Oracle, Read more ...

2025-03-04 open-source , kotlin , java , orm , spring , spring-boot

Open WebUI 基于网页的大语言交互界面及联网搜索配置

之前的视频也介绍过,ChatWise,Cherry Studio,Chatbox 等大语言模型调用的本地客户端,虽然这些客户端都还是跨平台的,但是总还是需要占用本地的空间,今天我就来介绍一款基于网页的 LLM 交互客户端 Open WebUI,以及再介绍一下如何配置 Open WebUI 让其支持联网搜索。 Open WebUI 是什么 Open WebUI 是一个功能丰富,用户友好的自托管大语言模型 Web 交互界面。Open WebUI 提供了一个类似 ChatGPT 的界面,但是允许用户与这种类型的 AI 交互 完全离线 本地环境可 Read more ...

2025-03-03 open-webui , llm , openai , chatgpt , open-source , ollama , rag

多版本管理工具 mise 使用详解

我用了很多年的 asdf 作为管理各种语言版本的工具,但是最近一次更新,asdf 多了一些变化,我也写了一篇文章介绍怎么升级的。在文章下方有小伙伴(lonelyhentxi) 给我推荐了 mise 这样一款使用 Rust 编写的多版本管理工具 mise,我大致的看了一下 mise,觉得是一个非常不错的项目,在这里再次感谢。 所以今天我就来介绍一下 mise,替换 mise 倒不是因为 asdf 不能用了,而是 Rust 在执行效率上确实要更快一些,比如我之前介绍的 Meilisearch,espanso 等等都是因为 Rust 编写,效率上都有所提升。 Read more ...


搭建 Joplin 同步服务器

在我的博客上很久之前我介绍过 Joplin,不过我自己只在 Linux,Android 上用过一段时间,后来出现了 Obsidian ,就切换到 Obsidian 了,但是最近看到一篇文章介绍了如何自建一个 Joplin 同步服务器,这样就可以直接无缝地进行同步数据了。之前 Joplin 只是开放了 [[WebDAV]] 协议的访问协议用可以用来同步。 介于由于部分小伙伴嫌弃 Obsidian 闭源,那不妨试试这一款完全开源的 Joplin。 什么是 Joplin Joplin 是一个开源的笔记,以及 Todo 管理应用,可以在 Windows,m Read more ...


从 Java 到 Kotlin

Kotlin 和 Java 作为 JVM 生态中两大主流编程语言,在语法特性、开发效率和适用场景上存在显著差异。Kotlin 凭借现代化设计解决了 Java 的许多痛点,而 Java 凭借成熟生态和广泛支持仍是企业级开发的主力。 Kotlin 在 2017 年 Google I/O 大会之后,成为了 Android 平台上潜力巨大的官方支持语言。 Java 转换到 Kotlin Kotlin 采用极简语法设计,相比 Java 减少约 40% 的样板代码量: 类型声明反转 String name = "Kotlin"; final int age Read more ...

2025-03-01 java , kotlin , programming-language , jvm , dart

AI 时代我们是否还需要个人知识库

这两天不管是在我的视频评论下方,还是在 X(Twitter)上,都有人提出了一个问题「AI 时代还是否需要个人知识库」,我觉得在回答这个问题之前,我们首先要回答两个问题,什么是「知识」?,而什么又是「个人知识库」? 知识 首先我们来聊一聊,「知识」的概念。 在牛津高阶字典中对知识的解释是: the information, understanding and skills that you gain through education or experience 我们从教育和经验中获得的信息,理解和技能。 《汉典》中对知识的解释 Read more ...


macOS 上利用 Hammerspoon 自动切换输入法

很久之前我介绍过一款 macOS 上的自动化应用 Hammerspoon,在那篇文章中我就已经简要的介绍过如何利用 Hammerspoon 实现超级强大的窗口管理,实现切换 WiFi 自动提醒,也简单的介绍过如何自动切换输入法,但是没有展开,今天正好趁着我重写 Hammerspoon 的配置文件,再展开介绍一下如何利用 Hammerspoon 自动切换 Rime 输入法。 查找 RIME 输入法的 Source ID 在编写切换脚本前,首先需要获取 RIME 输入法的源 ID。可以通过以下方法获取,在 Hammerspoon 的控制台中运行: hs Read more ...


OBS 配置多路推流 实现多平台同时直播

[[Open Broadcaster Software(OBS)]] 是一个非常强大的开源的,直播推流工具。但是默认情况下 OBS 只能配置推送一个直播流。但是现在支持直播的平台越来越多,如果直接将直播流推送给多个平台,那么可以通过本文介绍的方法,借助多平台推流插件来实现。 OBS 与 Multi-RTMP 插件 Open Broadcaster Software (OBS) 是一个广泛使用的开源软件,用于视频录制和直播推流。然而,默认的 OBS 设置仅支持推送单一直播流到一个平台。 Multi-RTMP 插件 Multi-RTMP 是一个第三方 Read more ...


最近文章

  • Claw Cloud Run 提供永久免费的服务器 Claw Cloud Run 是 Claw Cloud 旗下的,类似 Vercel,Netlify 的在线开发和部署平台,可以部署非常多 SaaS 程序,包括 [[AList]],[[Appsmith]],[[Bytebase]],[[ChatGPT-Next-Web]], frp,[[Dify]] 等等非常多的服务。
  • Google Agent2Agent 协议 现如今,AI Agent 已经能够自主处理非常多重复和复杂的任务,并且越来越多的企业也正在构建和部署 AI Agent。就在刚刚过去的 Google Cloud Next 2025 大会上 Google 宣布了全新的 Agent2Agent (A2A)协议。这是一个开放的 AI Agent 协议,目的是为了建立 AI Agent 框架之间的联系,实现安全高效的协作。
  • HostHatch 私有网络配置记录 我一直有使用 HostHatch 的 VPS,这也是我人生中购买的第一台新加坡的服务器,HostHatch 的服务一直比较稳定,可惜的是到国内的网络不太行,延迟比较高。但好在 2 核 8G 内存,40 G 存储,两年只要 68 美元,所以也就又续费了。
  • Cursor Rules 为 AI 设限 我自己使用 Cursor 已经有一段时间了,Cursor 提供了非常好用的代码补全,以及代码生成功能,但是在使用的过程中难免也发现了一些问题,最近看到 Cursor 推出了这个 Cursor Rules,看到了官方尝试来解决一些问题,也正好以此契机来完整地介绍一下 Cursor Rule,给 AI 设定一些界限,规则,不让其过分地自由发挥以至于发生意想之外的错误。
  • Flutter 教程系列一: freezed 使用 不管在什么样的应用中,如果要处理大量的数据,不可避免的就是要定义大量的数据类用来装载和解析数据,在 Flutter 中也不例外,今天要介绍的这个 Freezed 库就是 Flutter 中用来作为数据类(data classes)代码生成的这样一款工具。