操作系统、运行环境、中间件、微服务、应用软件 区分
文章目录
- 层级从上至下依赖关系
- 一、操作系统(管理硬件,所有软件底层载体)
- 定义
- 分类 + 示例
- 二、语言运行环境(代码执行虚拟机 / 解释器)
- 定义
- 示例
- 三、中间件(通用标准化第三方软件)
- 定义
- 分类 + 示例
- 1. Web / 应用容器中间件(请求接收、程序托管)
- 2. 数据库中间件(数据存储与管理)
- 四、微服务(自研业务模块化后端服务)
- 定义
- 示例
- 五、应用软件(含商用平台 + 终端应用)
- 第一类:厂商商用配套平台软件(私有专属底座)
- 第二类:终端 / 前端应用软件(面向用户交互)
- 六、核心分类对照表
- 七、极易混淆、容易分错类的组件清单
- (一)五层标准分类(基准规则)
- (二)极易混淆、分错类组件清单(附误区 + 正确归类)
- 1.看似中间件,实际是【操作系统】
- 2.容易和运行环境、中间件混淆的组件
- (1) 容器相关:Docker、containerd
- (2)代码工具链:Maven、Gradle、pip、npm
- (3)数据库驱动包:mysql-connector、pg 驱动
- 3.看似中间件,实际是【应用软件 / 厂商私有平台】(台账重灾区)
- (1) 报表产品:帆软 FineReport、润乾报表
- (2)商用 OA/ERP:致远 OA、泛微 OA、用友 NC、金蝶 EAS
- (3)平台底座授权:HopeServer、HopeLicence
- (4)运维平台:JumpServer 堡垒机
- (5)数据中台:阿里 DataWorks、华为数据平台
- 4.看似中间件,实际是【自研微服务】
- 5.监控、虚拟化组件区分
- 6.终端工具类(极易误判)
- 7.云环境组件区分
- (三)快速判定
- (四)易混组件对比表
层级从上至下依赖关系
操作系统 → 语言运行环境 → 中间件 → 微服务 / 商用平台软件 → 前端终端应用软件
一、操作系统(管理硬件,所有软件底层载体)
定义
负责管理服务器 CPU、内存、磁盘、网卡等硬件资源,是一切软件运行基础,直接对接硬件。
分类 + 示例
服务器 Linux 系:(国产 / 开源主流)麒麟、统信 UOS、CentOS、Ubuntu、Debian、RedHat、OpenEuler
Windows 服务器:Windows Server 2016、Windows Server 2019、Windows Server 2022
小型机专用系统:AIX(IBM)、HP-UX、Solaris
移动端操作系统:Android、iOS
二、语言运行环境(代码执行虚拟机 / 解释器)
定义
为对应编程语言提供运行基础,仅负责解析、执行代码,单独安装无法对外提供业务服务,是软件运行的基础依赖。
示例
Java 系列:JDK8、JDK11、JDK17、JRE
PHP 系列:PHP7.4、PHP8.1、PHP8.2、PHP-FPM
Python 系列:Python3.8、Python3.9、Python3.10、Python3.12
前端运行时:Node.js、V8 引擎
.NET 平台:.NET Framework、.NET Core
Go 语言:Go Runtime
浏览器引擎:Chromium
三、中间件(通用标准化第三方软件)
定义
独立部署、行业通用、无业务逻辑,专门解决通用技术问题,所有项目均可复用。
分类 + 示例
1. Web / 应用容器中间件(请求接收、程序托管)
Tomcat、Nginx、Apache Httpd、Jetty、Undertow、JBoss、WebLogic、WebSphere
2. 数据库中间件(数据存储与管理)
关系型:MySQL、PostgreSQL、Oracle、SQL Server、达梦、人大金仓、南大通用
非关系型:Redis、MongoDB、Elasticsearch、InfluxDB、TiDB
搜索引擎:Elasticsearch
分库分表:Sharding-JDBC
四、微服务(自研业务模块化后端服务)
定义
企业自研代码、按业务领域拆分、带有行业业务逻辑,仅服务自身业务系统,无法通用。
示例
- 政务类:user-service 用户服务、file-service 文件服务、notice-service 公告服务、land-service 自然资源、medical-service 卫健、traffic-service 交通
- 电商类:order-service 订单、goods-service 商品、pay-service 支付、cart-service 购物车
- 金融类:account-service 账户、loan-service 贷款、risk-service 风控
- 物联网类:device-service 设备、data-collect-service 数据采集
- 通用中台微服务:auth-service 认证、gateway-api 网关、log-service 日志、bpm-service 流程
五、应用软件(含商用平台 + 终端应用)
第一类:厂商商用配套平台软件(私有专属底座)
非通用中间件,绑定厂商整套系统,仅自家产品可用,含平台调度、授权、业务底座能力。
HopeServer、Hope Licence、用友 U8、金蝶平台、帆软报表、致远 OA、泛微 OA、华为 iMaster、浪潮管控平台
第二类:终端 / 前端应用软件(面向用户交互)
PC 客户端工具:微信PC版、钉钉、Office、CAD、Xshell、SecureCRT、Navicat、Postman
移动端应用:政务 APP、电商 APP、银行客户端、微信小程序
可视化大屏应用:数字孪生大屏、智慧运营大屏、态势感知大屏
六、核心分类对照表
| 分类 | 有无业务逻辑 | 是否全行业通用 | 典型代表 |
|---|---|---|---|
| 操作系统 | 无 | 硬件层面通用 | 麒麟、CentOS、Windows Server |
| 运行环境 | 无 | 语言层面通用 | JDK、PHP、Node.js、Python |
| 中间件 | 无 | 全行业通用标准化组件 | Nginx、Tomcat、PG、Kafka、Redis |
| 微服务 | 有专属业务逻辑 | 仅本项目可用(自研) | order 服务、water 水务服务、auth 认证服务 |
| 商用平台软件 | 平台调度 / 授权逻辑 | 仅配套厂商系统使用 | HopeServer、帆软、金蝶平台 |
| 终端应用软件 | 用户交互业务逻辑 | 终端工具 / 业务前端 | 政务 APP、Office、钉钉 |
七、极易混淆、容易分错类的组件清单
(一)五层标准分类(基准规则)
- 操作系统 OS
- 语言运行环境
- 通用中间件
- 自研微服务
- 商用 / 终端应用软件
(二)极易混淆、分错类组件清单(附误区 + 正确归类)
1.看似中间件,实际是【操作系统】
组件:鸿蒙服务器 OS、OpenEuler、AIX、HP-UX
- 误区:误认为平台软件,归为中间件
- 正解:直接管理服务器硬件,属于操作系统
组件:VMware ESXi(虚拟化底层)
- 误区:归为虚拟化中间件
- 正解:虚拟化底层操作系统,归属 OS 层
- 补充:VMware Workstation(桌面客户端)属于应用软件
2.容易和运行环境、中间件混淆的组件
(1) 容器相关:Docker、containerd
- 高频错误:归类为中间件
- 正确区分:
- Docker 引擎、containerd:容器运行环境(与 JDK 同级,底层代码运行支撑,非中间件)
- K8s(Kubernetes):平台类应用软件,不属于中间件
(2)代码工具链:Maven、Gradle、pip、npm
- 误区:归为运行环境 / 中间件
- 正解:仅开发阶段工具,线上服务器不部署,不属于五类线上组件
(3)数据库驱动包:mysql-connector、pg 驱动
- 误区:归为数据库中间件
- 正解:代码依赖 Jar 包,无法独立运行,依附微服务存在,不单独资产归类
3.看似中间件,实际是【应用软件 / 厂商私有平台】(台账重灾区)
(1) 报表产品:帆软 FineReport、润乾报表
- 错误归类:数据 / 报表中间件
- 正确归类:商用平台应用软件
- 理由:自带业务展示逻辑、绑定厂商体系,非通用基础组件
(2)商用 OA/ERP:致远 OA、泛微 OA、用友 NC、金蝶 EAS
- 错误归类:应用中间件
- 正确归类:成套商用业务应用软件
- 理由:完整业务系统,含专属业务逻辑,非通用技术组件
(3)平台底座授权:HopeServer、HopeLicence
- 错误归类:基础设施中间件
- 正确归类:厂商私有配套平台软件
- 理由:仅适配自家系统,无通用复用能力
(4)运维平台:JumpServer 堡垒机
- 错误归类:运维中间件
- 正确归类:运维专用应用软件
(5)数据中台:阿里 DataWorks、华为数据平台
- 错误归类:数据中间件
- 正确归类:商用一体化数据应用软件
- 理由:封装多种中间件,整体是业务产品,非基础中间件
4.看似中间件,实际是【自研微服务】
核心区分:开源官方组件 = 中间件,自研封装业务模块 = 微服务
网关服务
- Spring Cloud Gateway(官方开源):中间件
- 项目自研 gateway-api:微服务
文件 / 认证 / 日志服务
- 项目自研 file-service、auth-service、log-service:微服务
定时任务服务
- XXL-Job(官方程序):中间件
- 项目自研定时任务模块:微服务
5.监控、虚拟化组件区分
- Prometheus + Grafana
- Prometheus:运维中间件
- Grafana:可视化应用软件
- Zabbix 服务端:整体为运维监控应用软件,非通用中间件
- Redis、MQ、ES:标准中间件;自研封装的缓存业务服务属于微服务
6.终端工具类(极易误判)
组件:Navicat、Xshell、Postman、PL/SQL Developer、SecureCRT
- 误区:归为中间件 / 运行环境
- 正解:PC 终端应用软件
- 说明:仅本地工作人员使用,服务器无部署,不计入服务端资产
7.云环境组件区分
- 云服务器 ECS 底层:操作系统
- 云数据库 RDS(MySQL/PG 托管):底层为数据库中间件
- 云原生网格:Mesh、Istio:服务网格中间件
- 云厂商控制台(阿里云 / 华为云控制台):网页应用软件
(三)快速判定
- 管硬件、服务器底层系统 → 操作系统
- 给代码提供运行能力(JDK/Docker)→ 运行环境
- 开源通用、独立部署、无业务、全项目复用 → 中间件
- 团队自研、带有行业业务逻辑 → 微服务
- 厂商成套产品、授权平台、客户端工具 → 应用软件
(四)易混组件对比表
| 组件 | 错误归类 | 正确分类 | 核心理由 |
|---|---|---|---|
| Docker | 中间件 | 运行环境 | 仅提供容器运行能力,无通用业务能力 |
| K8s | 运行环境 | 应用软件 | 完整容器编排一体化平台,属于产品级应用 |
| FineReport 报表 | 数据中间件 | 应用软件 | 面向业务可视化,私有商用产品,非基础组件 |
| 自研 gateway-api | 网关中间件 | 微服务 | 自研业务代码,非开源通用标准组件 |
| JumpServer 堡垒机 | 运维中间件 | 应用软件 | 完整运维业务系统,具备业务管理能力 |
| VMware ESXi | 虚拟化中间件 | 操作系统 | 直接管控物理服务器硬件资源 |
| Grafana | 监控中间件 | 应用软件 | 仅做业务可视化展示,无底层技术支撑能力 |
| SpringCloudGateway | 微服务 | 中间件 | 开源通用标准网关组件,全项目通用 |