阿里架构师一文详解微内核架构,原来微内核这么简单

从0开始学架构总结 从0开始学架构总结架构设计三原则合适原则简单原则演化原则小结:架构设计流程:识别复杂度如何识别复杂度小结架构设计流程:设计备选方案第一种常见的错误:设计最优秀的方案第二种常见的错误:只做一个方案小结架构设计流程:评估和选择备选方案评估和选择备选方案小结架构设计流程:详细方案设计方案设计需要注意的事项小结高性能数据库集群:读写分离读写分离原理复制延迟分配机制小结高性能数据库集群:分库分表业务分库分表小结高性能NoSQL常见的NoSQL方案分为4类:小结高性能缓存架构缓存的架构设计要点缓存穿透缓存雪崩实现方式小 阅读详情

本文已收录GitHub,更有互联网大厂面试真题,面试攻略,高效学习资料等

微内核架构(Microkernel Architecture),也被称为插件化架构(Plug-inArchitecture),是一种面向功能进行拆分的可扩展性架构,通常用于实现基于产品(原文为 product-based,指存在多个版本、需要下载安装才能使用,与 web-based 相对应)的应用。例如 Eclipse 这类 IDE 软件、UNIX 这类操作系统、淘宝 App 这类客户端软件等,也有一些企业将自己的业务系统设计成微内核的架构,例如保险公司的保险核算逻辑系统,不同的保险品种可以将逻辑封装成插件。

本文将为你详细介绍常见的微内核架构及其实现。

基本架构

微内核架构包含两类组件:核心系统(core system)和插件模块(plug-in modules)。核心系统负责和具体业务功能无关的通用功能,例如模块加载、模块间通信等;插件模块负责实现具体的业务逻辑。

微内核的基本架构示意图如下:

上面这张图中核心系统 Core System 功能比较稳定,不会因为业务功能扩展而不断修改,插件模块可以根据业务功能的需要不断地扩展。微内核的架构本质就是将变化部分封装在插件里面,从而达到快速灵活扩展的目的,而又不影响整体系统的稳定。

设计关键点

微内核的核心系统设计的关键技术有:插件管理、插件连接和插件通信。

1. 插件管理

核心系统需要知道当前有哪些插件可用,如何加载这些插件,什么时候加载插件。常见的实现方法是插件注册表机制。

核心系统提供插件注册表(可以是配置文件,也可以是代码,还可以是数据库),插件注册表含有每个插件模块的信息,包括它的名字、位置、加载时机(启动就加载,还是按需加载)等。

2. 插件连接

插件连接指插件如何连接到核心系统。通常来说,核心系统必须制定插件和核心系统的连接规范,然后插件按照规范实现,核心系统按照规范加载即可。

常见的连接机

【架构实践】架构师十项能力清单:对标阿里P8晋升要求 阅读详情

相关推荐

【高级】| 系统架构师易混淆知识点汇总

聚焦《系统架构设计师考试》的易混淆知识点,按软件架构设计、信息安全技术、嵌入式系统、数据库系统、未来信息综合技术、人工智能六大模块分类,梳理了 30 余个核心易混点。其中,软件架构设计模块涵盖架构视图、微服务与 SOA、缓存技术等;信息安全模块包含网络攻击分类、安全保护等级、访问控制类型;嵌入式系统模块涉及微处理器分类、内核对比;数据库系统模块明确三级模式、备份方式、分区分表差异;未来信息技术模块对比Kappa 与 Lambda 架构、CPS 体系;人工智能模块区分强 / 弱 AI 及技术应用场景

大胆尝试,小心实践 1057

嵌入式系统/ARM技术中的基于微内核架构的嵌入式系统虚拟化技术

虚拟机环境的架构分析   在计算领域,虚拟化是一个广义的术语,通常是指对于计算资源的一种抽象。通过虚拟化,可使计算资源复杂的实际物理特性对于应用程序或终端用户加以隐藏[1]。这种过程既可以让单一的物理资源(如一台服务器,一个存储设备或一个操作系统)表现为多个可用的虚拟资源,也可以让多个物理资源(如多台服务器或多个存储设备)表现为单一的可用虚拟资源[2],甚至可以将多个物理资源加以整合并分化出多个可用的虚拟资源。   图1 虚拟机架构: 管理层架构与主机操作系统架构之间的比较   VMware Workstation[3]是一款传统的基于主机操作系统架构的虚拟机,并将虚拟机管理器运

麒麟linux离线源码编译安装zabbix-agent

离线源码编译安装zabbix-agent

qq_37263429的博客 2268

scDeepCluster_pytorch代码解读与文章理解

论文:Clustering single-cell RNA-seq data with a。

qq_34179307的博客 915

葵花 Himawari 8/9号数据学习记录-01-数据初识

葵花卫星学习记录,第一章:卫星的来源与卫星数据的波段介绍

weixin_44111909的博客 536

开源项目 ruoyi-sso-oauth2(一)环境配置

Ruoyi若依实现单点登录SSO、oauth2认证

Xiaoweidumpb 9683

使用项目管理画布启动项目

许多人对商业模式画布并不陌生,它是亚历山大·奥斯特瓦德(Alexander Osterwalder)、伊夫·皮尼厄(Yves Pigneur)在《商业模式新生代》(Business Model Generation)中提出的一种用来描述商业模式、可视化商业模式、评估商业模式以及改变商业模式的通用语言。 在我们做敏捷软件项目inception(项目启动规划)的时候经常会用到商业画布,此时它的作用是帮助我们快速了解客户的业务、产品和市场,帮助客户梳理自己的资源、优势和盈利模式,总的来说,商业画布是一种简单实用的

IDEAL Garden 1224

【Bug已解决】Codex CLI 报错 apply_patch 失败:无法应用补丁的解决方案

方案适用场景推荐指数统一换行符规范跨平台协作项目的标准配置⭐⭐⭐⭐⭐关闭自动格式化冲突IDE 与 Codex 并发编辑同一文件⭐⭐⭐⭐缩小任务改动范围长期有效的使用习惯优化⭐⭐⭐⭐⭐统一 UTF-8 编码涉及非 UTF-8 遗留文件的项目⭐⭐⭐提示重新读取文件单次失败后的快速恢复方式⭐⭐⭐⭐报错的本质是Codex 生成补丁时读取的文件内容,与实际应用补丁时磁盘上的文件内容出现了不一致,常见诱因包括换行符风格混用、文件被其他工具并发修改、编码问题等。

一键难忘的博客 7301

用业务语义织就企业数据之网:SAP Datasphere 的定位、架构与落地场景全解析

SAP Datasphere作为SAP业务数据云的核心组件,通过语义层整合企业内外部数据,支持实时分析与AI应用。其核心功能包括数据集成、语义建模、虚拟化与仓库能力,通过Spaces实现资源隔离,Data Builder和Business Builder分别面向技术和业务建模。该平台与SAP HANA Cloud、SAC等深度集成,支持财务统一分析、供应链可视化等典型场景,并可通过BW bridge实现传统BW资产云化迁移。Datasphere强调开放互联,能与Databricks等生态伙伴协同,为企业提供

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1363

openclaw通俗入门系列4——智能体工作区

工作区 = 智能体的家,存放它的性格、记忆、技能。默认不是牢笼(可以用沙箱隔离)。建议放到私有 Git 备份,但绝对不要提交密钥!

m0_60605453的博客 462

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: Kafka Streams与其他流处理平台的差异在哪里?
下一篇: Java程序员想要成功面试?请先要弄懂面试过程
Java_Cappuccino
博客等级 码龄7年 17粉丝 64原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值