zoukankan      html  css  js  c++  java
  • 中间件的定义、结构

    如下图为中间件的逻辑架构:



    • 中间件居于物理节点(physical node)和逻辑节点(logical node)之间的层次;

    中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。

    • 中间件可以进一步级联;如下图为以中间件的形式,对请求的代理pipeline:



    1. 中间件是对输入输出的研究

    What is middleware exactly?

    假设如下的场景,你所在的公司生产了 4 件产品,公司的某客户,手头已有 3 件产品分别来自 3 家不同的公司。此时如果客户想将所有这些产品集成为一个大系统。最快的方式是什么?

    答案便是使用中间件技术。这里中间件的要义在于,研究各个系统的输入和输出,以及它们需要利用的资源,然后选择一个恰当的中间件框架。如下图所示,中间件置于整个大系统的中间位置,比如首个系统如果输出 X,系统 Y 和系统 Z 则可消耗 X,继续运行。


    这里写图片描述

    2. 中间件的分类

    • 远程过程调用和对象访问中间件;
      • 分布式环境下应用的互相访问问题;也是应用服务化的基础(以服务的形式提供应用)
    • 消息中间件;
      • 应用间的消息传递,解耦,异步的问题;
    • 数据访问中间件;
      • 应用访问数据库的共性问题;
  • 相关阅读:
    C++闭包到C函数指针转化
    是否使用预编译头文件
    多线程模型一:只完成最新任务
    关于“函数针对入参判空并返回”
    C++函数参数的编写
    .Net Core(二) 下
    微信接口本地调试(IIS服务器)
    .Net Core 学习(二)上篇
    .Net Core学习(一)
    博客园的第一个博客
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9421497.html
Copyright © 2011-2022 走看看