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

阿里架构师一文详解微内核架构,原来微内核这么简单_第1张图片

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

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

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

基本架构

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

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

阿里架构师一文详解微内核架构,原来微内核这么简单_第2张图片

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

设计关键点

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

1. 插件管理

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

核心系统提供插件注册表(可以是配置文件,也可以是代码,还可以是数据库),插件注册表含有每个插件模块的信息,包括它的名字、位置

你可能感兴趣的:(程序人生,Java,Java,程序人生,后端开发,经验分享,架构师成长之路)