• 微内核架构详解


    极客时间:《从 0 开始学架构》:微内核架构详解
    微内核架构(Microkernel Architecture),也被称为插件化架构(Plug-in Architecture),是一种面向功能进行拆分的可扩展性架构,通常用于实现基于产品(原文为 product-based,指存在多个版本、需要下载安装才能使用,与 web-based 相对应)的应用。

    基础架构

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

    微内核的架构本质就是将变化部分封装在插件里面,从而达到快速灵活扩展的目的,而又不影响整体系统的稳定。

    设计关键点

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

    • 1、插件管理
      核心系统需要知道当前有哪些插件可用,如何加载这些插件,什么时候加载插件。常见的实现方法是插件注册表机制。
      核心系统提供插件注册表(可以是配置文件,也可以是代码,还可以是数据库),插件注册表含有每个插件模块的信息,包括它的名字、位置、加载时机(启动就加载,还是按需加载)等。
    • 2、插件连接
      插件连接指插件如何连接到核心系统。通常来说,核心系统必须制定插件和核心系统的连接规范,然后插件按照规范实现,核心系统按照规范加载即可。
      常见的连接机制有 OSGi(Eclipse 使用)、消息模式、依赖注入(Spring 使用),甚至使用分布式的协议都是可以的,比如 RPC 或者 HTTP Web 的方式。
    • 3、插件通信
      插件通信指插件间的通信。插件之间没有直接联系,通信必须通过核心系统,因此核心系统需要提供插件通信机制。
  • 相关阅读:
    win10下安装Oracle 11g 32位客户端遇到INS-13001环境不满足最低要求
    kubernetes环境下私有仓库搭建
    Build a Restful Service
    大数据的开始:安装hadoop
    调试Ajax调用的利器firebug
    Oracle Process Cloud流程云实践
    Kubernetes环境下如何运行Coherence缓存集群
    Kubernetes的负载均衡问题(Nginx Ingress)
    Kubernetes master节点的高可用配置
    Kubernetes环境下调整WebLogic JVM基本参数
  • 原文地址:https://www.cnblogs.com/whiteBear/p/15836772.html
Copyright © 2020-2023  润新知