## 硬件资源
由于微服务是将一套整体的项目拆分为 N 个子服务,每个服务作为一个独立的项目存在,保证了每一个子服务的启动/关闭不会影响到整个系统,但是因此也带来了硬件资源的消耗,以下为 15-20 个微服务应用下的最佳推荐,各个项目组可结合此配置自行扩展或缩减。
* 标配方案
服务器类型 | 配置 | 台数
---------|----------|---------
服务器 | 16CPU,32GB 内存,512GB 固态硬盘 | 2 台 所有服务部署在一起
>此标准配置可以做支持 10 个并发访问,10 并发理论上支持 200 到 500 同时在线
* 推荐方案
服务器类型 | 配置 | 台数
---------|----------|---------
数据库 | 32CPU,32GB 内存,512GB 固态硬盘 / 16CPU,16GB 内存 1T 机械硬盘 | 2 台,固态硬盘这台服务器为主数据库,机械硬盘的服务器为备用服务
内存数据库 | 16CPU,32GB 内存,256GB 固态硬盘 | 1+ 台,如需要大量访问内存数据库,请尽可能采用集群部署,建议 3 台起步
静态资源 | 16CPU,16GB 内存,128GB 机械/固态硬盘 | 1 台,用于部署微前端
微服务服务器 | 16CPU,32GB+ 内存,512GB 机械硬盘 | 1+ 台,为保证高可用,尽可能采用分布式部署方式,建议 3 台起步(分布式部署可以根据各服务的访问量,酌情减少服务器配置)
文件服务器 | 8CPU,16GB 内存,1T 固态硬盘/1T 机械硬盘 | 1+ 台,为保证高可用,尽可能采用分布式部署方式,建议 3 台起步,如果都是固态硬盘,则请至少配置一台机械硬盘作为备份使用(非必备,可以外购 OSS 服务)
>此推荐配置采用集群部署,也就是所有建议 3 台起步的,按照 3 台的方案部署,可以支持 100 个并发访问,100 并发理论上支持 2000 到 5000 同时在线
> 在极端情况(16GB 内存,8CPU)下也可使用平台组进过测试后的结合 tomcat 的模式进行部署,且这种模式下项目的并发数量将大大降低,但此模式为禁用方案,请各项目组在技术询价报价前请明确告知
* 内存计算
对象名 | 内存推荐(GB) | 备注
---------|----------|---------
blade-system | 1+ | 系统服务
blade-auth | 1+ | 认证服务
blade-gateway | 2+ | 网关服务 所有微服务都将经过他进行转换
blade-flow | 4+ | 工作流服务
blade-resource | 1+ | 资源管理服务
blade-report | 1+ | 报表服务
blade-xxljob | 1+ | 任务调度
redis | 4+ | 推荐使用所选微服务的内存消耗的1/2作为最终内存
nacos | 2+ | 配置中心
mysql | 2+ | 数据库
数据采集 | 4+ | 数据采集 单机支持每分钟1000条
数据处理 | 4+ | 数据清理服务
数据展示 | 8+ | 数据渲染展示
采集数据库 | 16+ | 采集为了保持高性能,最好使用8CPU+ 16GB+ 固态硬盘作为服务器
## 环境准备
名称 | 版本 | 备注
---------|----------|----------
JAVA 环境 | JRE1.8+ | JDK 为开发调试时的运行环境,实际运行时可以使用 JRE
数据库 | MySql5.7+ | 数据库和 HZ3000 数据库配置一致
Redis | 4.0+ | 内存数据库,在硬件资源配置 redis 尽可能使用最新最稳定版本
Nacos | 1.3.1 | 参考下文进行安装1