软件系统概要设计说明书

上传人:人*** 文档编号:564992761 上传时间:2023-08-01 格式:DOCX 页数:15 大小:136.90KB
返回 下载 相关 举报
软件系统概要设计说明书_第1页
第1页 / 共15页
软件系统概要设计说明书_第2页
第2页 / 共15页
软件系统概要设计说明书_第3页
第3页 / 共15页
软件系统概要设计说明书_第4页
第4页 / 共15页
软件系统概要设计说明书_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《软件系统概要设计说明书》由会员分享,可在线阅读,更多相关《软件系统概要设计说明书(15页珍藏版)》请在金锄头文库上搜索。

1、系统概要设计说明书xxx 智慧运营管理平台作者:创建日期: 2022-10更新日期:版本: 1.0文档控制序号变更内容责任人日期1初稿2022-06-02文档分发目录1 引言 41.1 编写目的 41.2 参考资料 42 系统总体设计 42.1 需求规定 42.2 系统总体架构 52.2.1 系统架构图 52.3 系统开发技术 62.3.1 后端开发技术 62.3.3 前端开发技术 62.3.4 数据库技术 72.4 接口设计 72.4.1、接口设计规范 72.4.2、接口安全设计 92.4.3、幂等性设计 93 数据库设计1.04 安全解决方案 1.05 部署方案1.16.1 硬件规格与型号

2、建议1.16.2 软件 1.16.3 服务器虚拟化1.26.4 部署步骤1.26.4.1 数据库部署1.26.4.2 应用部署 1.36.5 构建部署流程图1. 36、API响应码141 引言1.1 编写目的本概要设计说明书根据智慧运营管理平台需求规格说明书编写,描述了系统的总体概要设计,为系统测试人员提供测试依据。本文档的预期读者为:项目经理、系统分析员、测试经理、项目组长、系统开发人员。1.2 参考资料智慧运营管理平台需求规格说明书。2 系统总体设计2.1 需求规定本系统的主要的输入输出项目、处理的功能性能要求参照智慧运营管理平台需求规格说明书。2.2 系统总体架构2.2.1 系统架构智慧

3、运营管理平台访问层Hnp/Https网关API网关服务通信业势月艮务模块减排项目投融产品服务层MQRESTRPC机构管理投融资帅速统一日志记录 统一权限管理服务治理资讯置湮图2-系统架构图整个微服务架构分为四层,分别为数据层、服务层、网关、访问层。1、数据层主要包括数据库、缓存、分布式文件存储,用于存储系统中的所有的业务数据、附件、图片、音频、视频等;2、服务层是整个微服务架构的核心层,所有的业务逻辑都在这一层实现,同时采用服务治理、统一配置、熔断降级、消息队列等技术对这些服务进行统一管理;3、网关作为整个系统的唯一入口,所有外界对系统的访问都必须经过网关,因此同时也提供身份鉴权、权限验证、负

4、载均衡等功能;4、访问层主要是各种客户端,包括 PC 端、移动端、各种物联网设备等,通过http/https协议经过网关实现对服务的调用。2.3 系统开发技术2.3.1 后端开发技术1、开发语言:Java2、开发平台:Sprint Cloud Alibaba3、服务注册与发现:Nacos4、服务网关:Gateway5、消息队列:RabbitMQ6、服务通讯:Http/gRPC7、分布式追踪与监控:Skywalking8、统一配置管理:Nacos9、分布式日志系统: ELK10、服务认证鉴权:JWT2.3.3 前端开发技术前端主要是基于 Vue 进行开发,同时也涉及三方组件库,包括 dvajs、

5、Less、bizcharts、G6、L7、Ant Design Ul 等。2.3.4 数据库技术1、主数据库:MySQL ;2、中间数据库:SQL Server ;3、分布式缓存:Redis ;4、实时搜索与数据分析:Elasticsearch ;5、ORM 技术:MyBatis。2.4 接口设计2.4.1、接口设计规范由于本平台采用微服务架构模式进行开发,所有服务间的相互访问都是采用 APl接口实现,严格遵守以下设计规范:1、路由命名规范动作前缀例如获取数据getgetUse rList新增数据addaddUser修改数据updateupdateUse r保存数据savesaveUser删除

6、数据deletedeleteUse r上传数据uploaduploadFile表1-路由命名规范列表2、请求方式3、请求参数(1)Queryurl?后面的参数,存放请求接口的参数数据。(2)Header请求头,存放token、requestld、公共参数、加密字段等。(3)BodyBod y体,存放请求接口的参数数据。4、Web 端请求参数说明备注accessToke n授权Key字符串表3 - Web请求参数列表调用方需向服务方申请appld (应用id),然后根据appld生成accessToken。5、返回参数参数类型说明备注codeInt响应码成功=0失败=-1参数类型说明备注内部错误

7、二2 登录失败-1001 无权限=1002messageSt ring显示信息接口响应消息dataObject数据JSON格式表4-返回参数含义列表2.4.2、接口安全设计1、接口身份验证采用Oauth2.0,只允许经过授权的合法用户调用系统接口。2、敏感数据脱敏处理,对于敏感的部分数据用*号代替;3、对于敏感数据,在传输过程中采用不可逆的加密算法对数据进行加密,确保传输过程中数据安全;4、支持Https协议进行连接及数据传输,同时支持第三方CA证书;5、支持加签名方式,防止数据篡改。客户端:请求的数据分为两部分:签名参数和业务参数,签名参数二SHA256加 盐加密(业务参数)。服务端:对SH

8、A256加盐加密(业务参数)进行验证,确认是否与签名参数相同。2.4.3、幂等性设计通常我们无法保证接口的每一次调用都是有返回结果的,要考虑到异常情况, 例如出现网络异常。为了避免出现这种情况,应采用幂等性设计,思路如下:(1)调用接口前,先获取一个Token (全局唯一的令牌); 调用接口时,将Token放到Header头中;(3) 解析Header头,验证是否为有效Token,如果无效则直接返回失败;(4) 完成业务逻辑后,将业务结果与Token进行关联存储,设置失效时间;(5) 重试时不要重新获取Token,用要上次的Token仃oken必须设定有效时 间,并设置默认时间,例如20分钟)

9、。3 数据库设计详见智慧运营管理平台数据库设计说明书。4 安全解决方案本项目运行于客户企业内部环境,为有效应对复杂网络中存在的各类风险,系 统运行过程中应做好相关的安全工作:1、边界配置防火墙,保护内部网络遭受DDos,Web恶意攻击等攻击,同时具 有漏洞扫描能力、入侵检测功能,保障内部服务器与用户的接入安全;2、隔离本系统网络与外部网络环境,只开放相关业务需要的网络环境的通讯, 并可自主规划网络内的业务网段;3、支持使用SSL证书服务(要求Web访问使用域名或公网IP,私有IP无法使 用SSL证书服务),为HTTP网站提供转向HTTPS,加密应用层数据,保护数据 安全;3、使用数据库审计功能

10、,记录数据库操作记录,实现对数据库的审计;4、使用堡垒机管理运维服务器,限制用户只能通过堡垒机操作服务器,实现服 务器的操作维护审计和账号权限管理;5、做好服务器以及用户口令管理,禁止使用简单口令,弱口令等,并定期更新 口令;6、服务器可视情况关闭非必要的接口的访问功能。5部署方案平台的整个研发是基于DevOps体系,实现了自动化构建,从而提高了运维部署 效率。本项目采用微服务架构,使用Docker软件将微服务进行容器化安装部署。6.1 硬件规格与型号建议硬件列表功能建议规格配置理由备注服务器*3作为虚拟化宿主机, 分配虚拟化应用服 务器以及数据库服 务器Dell R740硬盘*2 :T(RA

11、ID5) 内存:64GCPU :英特尔至 强银牌4210R 2.4G,10C/20T,9.6GT/S,13.75M缓存,Turbo, HT (100W)DDR4-2400服务器总资源为4T 硬盘,64G内存,以 及10核CPU,作为 虚拟化服务器的底 层资源池每台服务器虚拟化 应用及数据库服务 器各1台,总计虚 拟化服务器: 应用服务器*3 数据库服务器*3, 只考虑部署平台所 需环境路由器作为网络边界路由 器连接互联网H3C ER3260G3千兆企业级路由器只考虑部署系统所 需环境交换机作为服务器接入网 络的直接设备H3CS5120V2-28P-SI支持VLAN划分, 隔离其他无关网络只考虑

12、部署系统所 需环境防火墙防护内外网安全风 险具有传统防火墙, VPN,入侵防御, Web防护,防病毒, 数据防泄露等功能只考虑部署系统所 需环境表5 -硬件与型号建议列表6.2 软件软件列表版本概述运行方式功能MySQL8.0数据库主机服务运行平台所需中间件Redis6.0分布式缓存容器化运行平台所需中间件RabbitMQ3.8.5消息队列容器化运行平台所需中间件Docke r19.03.5容器化工具主机服务运行运行微服务所需工具Docke r-Swarm1.26.2容器编排工具二进制运行程序运行微服务所需工具Pyth on3.9.2脚本运行语言二进制运行程序用于运行数据库自动备份脚 本Nac

13、os2.0.1微服务中间件容器化运行微服务注册中心与配置中心Elasticsea rch7.9日志中/心容器化运行微服务日志中心Logstash7.9日志采集工具容器化运行采集微服务日志,并发送到 日志中/心Kiba na7.11日志展示工具容器化运行可视化展示系统日志表6-系统部署所需软件清单6.3 服务器虚拟化虚拟化服务器系统数量CPU内存硬盘备注应用服务器Cen tos7.935核48G2T承载运行平台应用,3台组成集群数据库服务器Cen tos7.935核48G2T运行MySQL数据库,3台组成集群表7 -虚拟化服务器列表6.4 部署步骤6.4.1 数据库部1、部署相关信息包括服务器I

14、P,服务器数量,现场网络环境拓扑,数据库用户 与密码设计,数据库备份策略等信息收集确认;2、通过收集回来的信息,提前编写部署脚本用于实际部署;3、脚本安装Python3.9 ;4、脚本安装数据库MySQL8.0,配置账号初始权限与访问限制,并生成定时任 务自动备份数据库;5、检查数据库状态,确保数据库运行正常。6.4.2 应用部1、部署相关信息包括服务器IP,服务器数量,现场网络环境拓扑,各系统所使 用密码确认等信息收集确认;2、收集完成这些信息后,准备部署脚本,实际部署时直接运行部署脚本;3、登录服务器,查看基础信息,使用脚本实现服务器的初始化配置;4、使用脚本安装平台基础工具组件,包括Docker

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号