OpenClaw上手
最近 OpenClaw 突然爆火。一开始我没太在意,觉得它不过是一个套了聊天软件外壳的 OpenAI Codex,和这段时间不断冒出来的各类 AI Bot 项目相比,好像也没有特别大的差别。 但前两天,一个并非程序员的朋友给我展示了他的用法:他用 OpenClaw 集成飞书,配置了两个机器人,一个负责产品管理,另一个负责程序开发,最后居然真的帮他搭出了一个像
4220 字
|
21 分钟
LangExtract初探
最近关注到 Google 开源的 LangExtract 。从定位上看,它并不是一个通用聊天框架,而是一个面向信息抽取场景的工具:通过大语言模型,按照开发者定义的抽取规则,将非结构化文本转换为结构化结果。 如果你曾经接触过传统的 NER、关键词抽取或关系抽取,会比较容易理解 LangExtract 的价值。它的重点并不在于完成“识别人名、地名、组织名”这类固
2671 字
|
13 分钟
分布式事务之二阶段提交
01.什么是分布式事务? 在单体系统中,一次业务操作通常只涉及一个数据库节点,本地事务即可通过 ACID(原子性、一致性、隔离性、持久性)确保数据正确性。但随着系统拆分为微服务、数据分片、读写分离、多数据库架构等分布式模式,同一个业务操作往往涉及多个节点的资源操作。这时,本地事务不再能够保证全局一致性,就需要“分布式事务”。 分布式事务(Distribute
2352 字
|
12 分钟
领域驱动设计
01.引言 作为一个有些“代码洁癖”的程序员,工作中最让我头疼的,莫过于接手质量糟糕的代码。 每当我看到大量晦涩、冗余、缺少设计思考的代码堆在一起,尤其是那些把所有业务逻辑都塞进一个“万能 Service ”里的实现时,总要先花很长时间一行一行地阅读,试图理解作者究竟想通过这段流程表达什么业务意图。很多时候,真正令人疲惫的并不是代码量本身,而是代码没有结构、
9153 字
|
46 分钟
使用JNI调用本地代码
01.引言 在某些场景中,我们可能需要Java程序使用针对特定架构原生编译的代码,比如: 程序需要跟硬件交互。 提高对性能敏感的程序的性能。 与非Java环境交互,重用其他语言编写的库,节省用 Java 重写的工作。 我们可以使用JNI (Java Native Interface)来调用本地代码。JNI是 Java 提供的允许 Java 应用程序调用和被调
1921 字
|
10 分钟
使用Jenkins、Docker和GitHub搭建一个CI/CD管道
CI/CD的全称是持续集成/持续交付(Continuous Integration and Continuous Delivery),是一种软件开发实践,目标是通过自动化的过程来加速软件交付。CI/CD管道是实施CI/CD的工作流程。
1210 字
|
6 分钟
MySQL窗口函数
窗口函数(Window Function)是MySQL 8.0才加入的一项重要功能,之前需要很复杂的操作才能实现的分析、汇总等等查询通过窗口函数终于可以很简单地实现了。窗口函数在一组查询行上执行类似于聚合的操作。大多数聚合函数也可以用作窗口函数。不过,有别于聚合操作将查询行分组为单个结果行,窗口函数为每个查询行生成一个结果: 执行函数分析的行被称为当前行。
1412 字
|
7 分钟
线程安全的Java单例模式实现
Java单例模式是“Gangs of Four”提出的设计模式之一,属于创建型设计模式。这种模式限制类的实例化,确保在Java虚拟机中只存在一个类的实例。单例模式看起来简单,但在实现时却需要考虑很多因素。 下文是对线程安全的单例设计模式的不同实现的探讨。 线程安全的单例模式实现 单例模式有各种实现方式,这些实现方式一般都具有以下共同特点: 使用私有构造函数以
1256 字
|
6 分钟