Page 19 - 《软件学报》2021年第5期
P. 19
殷康璘 等:基于混沌工程的微服务韧性风险识别和分析 1243
配置见表 1.部署环境中的容器均按默认配置部署,并未对各容器的资源分配情况进行额外设置,因此,Worker 节
点上运行的各容器资源分配模式均采用容器默认的按需分配方式.
Fig.10 Sock-Shop system deployment environment
图 10 Sock-Shop 的部署环境
Table 1 Server configuration of the deployment environment
表 1 部署环境的服务器配置
配置 参数
操作系统 Ubuntu Server 16.04
CPU Intel Xeon E5-2620*2
内存 64GB ddr4
磁盘 3TB
网卡 1 000Mb/s
上述目标系统和实验环境满足了本文第 2.1 节中所提出的各项系统前提:自动化部署组件 Jenkins 与 Sock-
Shop 本身提供的 Kubernetes 部署配置文件满足了条件(1)的系统自动化构建能力;Sock-Shop 系统已处于可发布
运行的状态因此满足条件(2);Kubernetes 本身集成的时序数据收集工具 Prometheus 使目标系统满足了条件(3).
案例研究将首先按照条件(4)、条件(5)提出的假设下对目标系统进行韧性风险识别.
4.2 Sock-Shop的韧性风险识别
为了验证研究问题 1,本案例研究中将根据本文第 2 节所提出的韧性风险识别方法寻找 Sock-Shop 系统中
的韧性风险.
4.2.1 韧性风险识别
在 Sock-Shop 中,所有的用户操作均为网页端的点击操作,因此,Sock-Shop 的系统服务均为事务性的 HTTP
服务.在本案例研究中,服务平均响应时间(response time)以及响应成功率(success rate)被作为所有服务的基础
性能指标.Sock-Shop 的核心服务的服务性能指标将根据服务的业务关注点设立.表 2 展示了在案例研究中针对
Sock-Shop 系统各服务所设计的服务性能指标.
Table 2 Service performance indicators of Sock-Shop
表 2 Sock-Shop 的服务性能指标
服务 服务性能指标名称 描述
全部服务 响应时间 从用户请求发出到收到系统回复花费的时间
− 响应成功率 单位时间服务返回正常系统回复的成功率
订单服务 每秒成功交易量 每秒成功完成订单的数量
商品信息服务 每秒执行事务数量 服务每秒处理的请求数量
用户登录服务 登录成功率 单位时间内所有用户登录请求中登录成功的比率