GoForum🌐 V2EX

AI 时代,微内核是否是一个很棒的软件架构

litchinn · 2026-03-26 13:24 · 0 次点赞 · 5 条回复

过去很多场景下微内核显得很多余,你不能指望用户自己开发功能 但现在 AI 加持,用户完全可以自定义插件,使软件完全符合自身需求而不显得臃肿

5 条回复
vsomeone · 2026-03-26 13:39
#1

微内核?你说的是微服务吧,微内核是操作系统的概念

lujiaxing · 2026-03-26 13:39
#2

微内核是啥意思

tanxnative · 2026-03-26 13:49
#3

事件驱动?

lujiaxing · 2026-03-26 14:04
#4

哦 懂你意思了. 你是想说你只做一个类似 USB 接口的软件. 功能只要作为插件插在这个软件上就能实现相关的功能? 这确实是个好想法.

这一直都是个好设计.

但是这东西后面的结果就是:

你想的很好, 开一个你以为足够开放有足够强兼容性的接口实现某些你能想到的任何需求. 只需要接在上就行了. 你是业务的核心, 一切数据从你这里来, 一切数据从你这里走.

然后过几天新来了一个需求, 里面提到了一些新鲜的概念, 你开放出来的接口并不能兼容这个. 所以你升级了一个版本. 然后过几天新来了一个需求, 为了实现这个需求, 你的接口可能某些字段会与其他既有系统冲突. 你选择加个 if 判断如果是某个特定的插件就怎样怎样. 看似完美的解决了, 但是屎山化却已经从这里就开始了.

然后过几天新来了一个需求, 涉及到了更多更多的数据字段, 为了实现这个需求, 原来的接口已经不够用了. 然后你为了这个需求, 就只能公布了一些原来 internal 的东西. 你的微内核边界开始消解.

然后过几天新来了一个需求, 涉及到跟另外几个模块存在紧耦合的情况, 你原本设计的接口已经不足以支撑这么多特化的数据字段, 因此那几个模块之间开始绕过你这个微内核直接通信.

乱七八糟的通信开始越来越多, 逐渐的 你这个微内核的逻辑越来越复杂, 由原来的微内核变成了巨内核. 巨内核变成了整套系统里一座不起眼儿的屎山.

lujiaxing · 2026-03-26 14:04
#5

然后一个新来的年轻架构师站在这座屎山之海的岸边, 望着这一群青藏高原一般的屎山, 突然有了一个想法:

诶, 如果从这些系统里抽出一个最核心的业务, 使其作为一个微内核, 让其他系统围绕这个微内核运行, 是不是就能解决这些屎山了呢?

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: litchinn
发布: 2026-03-26
点赞: 0
回复: 0