• 沒有找到結果。

本文档基于微服务架构的应用程序“凤凰商城”,使用软件开发平台进行全流程管

1-2 凤凰商城技术架构图

示例程序由表1-1中的5个可以独立开发、测试和部署的微服务组件构成。

1-1 凤凰商城微服务组件表 微服务组件 说明

Web用户端服 务器(对应样 例代码中的

“Vote”功 能)

● 业务逻辑:用户可以通过浏览器访问此服务的WebUI。当用 户在特定商品上单击“Like”时,服务将用户所选择物品的 记录保存在Redis缓存中。

● 技术栈:Python、Flask框架。

● 应用服务器:Gunicorn。

Web管理端服 务器(对应样 例代码中的

“Result”功 能)

● 业务逻辑:用户可以通过浏览器访问此服务的WebUI,会动 态显示用户端UI上用户单击“Like”的统计数据,此数据来 自PostgreSQL数据库。

● 技术栈:Node.js、express框架。

● 应用服务器:server.js。

后台订单批处 理程序(对应 样例代码中的

“Worker”

功能)

● 业务逻辑:此服务为后台进程,会监控Redis缓存中物品记 录,并将新纪录取出并保存在PostgreSQL数据库中,以便管 理端UI可以抽取数据进行统计显示。

● 技术栈:.net core或者Java(此服务提供两种技术栈实现了 同样的功能,可根据需要修改配置选择其中一个作为运行时 进程)。

订单缓存(对 应样例代码中 的“Redis”

功能)

业务逻辑:此服务作为用户端UI服务的数据持久化服务存在。

订单数据库

(对应样例代 码中的“PostgreSQ L”功能)

业务逻辑:此服务作为管理端UI服务的数据源。

● 页面展示

– 用户端UI:默认使用“http://localhost:5000”地址,即可打开如图1-3所示 页面。

1-3 用户端 UI

– 管理端UI:默认使用“http://localhost:5001”地址,即可打开如图1-4所示

1-4 管理端 UI

● 调试、测试、打包和部署方式

示例程序全部使用Docker进行打包和部署,并使用docker-compose作为配置文 件的基本格式。

本地调试可以使用以下命令(确保在代码库的根目录中执行):

docker-compose up

“DevOps 全流程样例项目”简介

软件开发平台提供了一个样例项目“DevOps全流程样例项目”来承载“凤凰商城”示 例程序,本文档通过此样例项目讲解软件研发生命周期的操作。

“DevOps全流程样例项目”是一个Scrum类型的模板项目,项目中预置了部分软件开 发平台服务的使用模板。项目实践过程中涉及到的产品及服务如表1-2。

1-2 实践涉及产品/服务列表

服务 说明

DevCloud使用

模板 项目管理 预置项目的整体需求规划图、3个已规划并已完成 的迭代、项目的模块设置、以及若干统计报表。

代码托管 预置代码仓库phoenix-sample,存放“凤凰商 城”项目代码。

代码检查 预置4个代码检查任务,任务详情介绍请参见步骤 五:检查项目代码。

编译构建 预置5个编译构建任务,任务详情介绍请参见步骤 六:构建应用。

部署 预置3个部署任务,任务详情介绍请参见步骤七:

部署应用(弹性云服务器篇)。

服务 说明

云测 功能测试用例库,包含十余个测试用例。

流水线 预置5个流水线任务,任务详情介绍请参见步骤 八:配置流水线,实现持续交付。

CloudIDE

用于开发项目代码。

发布 用于存储通过编译构建任务生成的软件包。

SWR

用于存放编译构建任务中生成的Docker镜像。

弹性云服务器

ECS

用于软件包部署。

云容器引擎

CCE

用于软件包部署,与ECS部署属于两种不同的部署 方式。

实践流程

本文档将按照以下步骤介绍HE2E DevOps实践的操作流程。

1. 准备实践环境。

– 使用CloudIDE修改和提交代码。

– 检视代码、合并分支。

5. 检查项目代码。

– 配置并执行代码检查任务。

为了让您能更好的完成并体验HE2E项目在软件开发平台上的端到端实施,在进行具体 的任务操作前,您需要完成以下准备工作。

注册帐号并实名认证

使用软件开发平台(DevCloud)前,需要有已实名认证的华为云帐号。若已有已实名 认证的华为云帐号,请忽略此步骤。