本文为您介绍如何在BizWorks中建设一个完整的中心应用,包括创建应用、生成代码、完成应用部署。
前提条件
已完成项目创建。
当前账号拥有项目权限。
已准备好代码仓库和访问凭证,供代码库配置使用。
步骤一:创建中心应用
中心应用是利用BizWorks平台进行建模、开发、部署并运维的应用,提供代码生成等能力,能够加快应用开发速度。本文以创建交易中心应用为例,实现基础交易、预售交易,以及交易域下基础能力。
登录BizWorks,在选择平台下拉列表中选中微服务开发平台。
单击页面右上角
图标或其文本框区域,在下拉列表中单击目标项目名称,单击应用页签。在应用列表页面,单击新增应用。在创建应用面板,选中根据模板创建,单击下一步。其中,根据模板创建会根据所选模板生成代码并提交到指定代码仓库;空应用用于创建未配置的应用空间,可关联已有代码仓库进行开发部署;托管应用用于将已开发完成的应用部署到BizWorks平台统一运维管控。
在创建应用的选择模板配置向导页,选中中心应用DDD模板,单击下一步。
在根据模板(ddd-template)创建应用面板的应用基本信息配置向导页面,设置相关参数。具体操作,请参见创建中心应用(DDD模板)。
可选:在模板基础配置向导页面,设置GroupId,选择Spring Boot版本,且按需完成其他配置项设置或修改后,单击下一步。
可选:在模板高级配置向导页面,您可添加一个或多个当前项目中的限界上下文。完成设置后,单击保存。
重要限界上下文如果已经被其他应用关联了,则不能被再次关联。
支持关联BizWorks建模平台的技术模型产物,并围绕模型信息在脚手架中生成代码。如果未关联则默认不基于模型生成代码,后续在应用详情页中配置关联。
在关联模型区域,单击添加按钮选择需要关联的限界上下文及版本,完成后单击保存。
创建完成后,打开该应用的页面,您可以看到代码已经生成。
步骤二:生成代码
根据模型设计生成代码,并将代码提交到代码仓库。
如果要生成代码,请您确保当前应用为中心应用,且已关联了限界上下文。
单击页面右上角
图标或其文本框区域,在下拉列表中单击目标项目名称后,单击应用页签。在应用列表页面单击目标中心应用名称。
在目标中心应用左侧导航栏中,选择。
在代码生成页面,单击目标分支名称,在代码生成面板您可以查看相关代码详情。代码详情包括项目构建方式(Maven Project)、开发语言(JAVA)、框架类型(SpringBoot)、打包方式(JAR)、应用版本(如
v1.0.0)及其状态、代码分支(如develop_20231020_105555),以及项目元信息(GroupId、ArtifactId、Version)等。代码生成后,您可以进入对应的代码仓库,查看生成的分支,包含App、Entry、Domain、Infrastructure、Client、Extension和Starter7个基础模块(Module)。模块具体说明,请参见代码模块说明。
步骤三:部署应用
在目标中心应用左侧导航栏中,选择。
在应用部署页面,选择需要部署的环境,单击目标环境下的虚线框区域。
说明应用部署页面不仅支持显示一个环境下的多个实例,以及每个实例下的工作负载,而且能够显示每个工作负载的类型。
在对应环境的部署实例区域,单击创建部署实例即可新建部署实例;已创建的实例会显示实例 ID、执行状态、操作人及操作时间等信息。
只有企业级用户、项目负责人和应用负责人账号角色,既能看到开发环境和测试环境下的环境信息,也能看到预发环境和生产环境下的环境信息,并能进行部署、更新实例等操作。其他账号角色只能看到开发环境和测试环境下的环境信息,在相应的环境下也能进行部署、更新实例等操作。
关于BizWorks的账号体系的详细信息,请参见平台账号和权限说明。
在新建实例部署-部署配置面板,完成部署配置,单击下一步。在弹出的 新建实例部署 - 部署配置 页面中,除应用来源和流水线外,还需配置以下内容:部署策略 支持 默认策略(按滚动方式发布,每次启动一个新副本,就绪后停掉一个老副本,直到全部完成)和 自定义策略;网络配置 区域提示实例首次部署不包含网络配置,请在部署成功后添加实例的网络访问策略;资源配置 区域可设置 实例总数 及单实例资源配额,包括 CPU资源预留、Mem资源预留、CPU资源限制、Mem资源限制。
相关配置项说明请参见下表。
配置项
说明
应用来源
在选择应用版本下拉列表中选择目标应用版本,您可以选择已发布或开发中的版本。
如果选择代码,且选择的版本状态为开发中,则还需要选择代码分支,设置Commit ID(非必填,不填写Commit ID时,默认使用分支的最新版本)。
如果选择镜像,则单击选择镜像,在选择镜像对话框中,选中目标镜像后,单击确定。如果选择镜像,则在选择镜像弹窗中,根据生成时间、代码信息、镜像Tag、芯片架构等信息选择目标镜像,然后单击确定。
说明选择镜像对话框中列出的镜像记录范围来自流水线运行(详见查看镜像列表信息),平台同时会对镜像记录自动筛选,筛选条件为“镜像生成时的应用版本=此次实例部署的应用版本,镜像生成时的芯片架构=此次实例部署的目标部署环境的芯片架构”。
根据版本发布时选择的内容来决定使用何种来源,版本发布过程详见创建和发布中心应用版本。
版本发布时选择代码方式,则部署该版本时需要进行完整代码编译构建和部署过程。
版本发布时选择镜像方式,则部署该版本时仅部署镜像。
说明推荐版本发布时选择镜像方式。
流水线
在选择流水线下拉列表中,选择目标流水线。支持三类流水线,详见管理中心应用流水线。
部署配置
部署策略:
默认策略:按照滚动方式进行发布,每次启动一个新副本,就绪后停掉一个老副本,直到全部完成。
自定义策略:可选择按Pod数或按百分比。
高级选项:单击添加,完成相关配置项设置。
容忍度:支持选择目标环境上已经部署成功的记录为基础,在其基础上确定应用模板需要的镜像信息、部署参数等。
容忍度配置项包含 Key、操作符、Value、效果和时间(秒)字段,可单击删除移除已添加的配置行。
Key和Value的配置规则如下:
Key:
不能超过253个字符。
支持字母、数字、短划线(-) 和半角句号(.)。
需以字母、数字字符(a~z、0~9、A~Z)开头和结尾。
Value:
不能超过63个字符。
支持字母、数字、短划线(-)和半角句号(.)。
如果标签值不为空,则需以字母、数字字符(a~z、0~9、A~Z)开头和结尾。
网络配置
实例首次部署不包含网络配置,需要在部署成功后添加实例的网络访问策略。
如果部署实例的环境所属的集群为阿里云BizWorks Serverless公有版时,则需要在实例部署或更新时指定实例网卡的安全组,支持使用环境的默认安全组和使用现有安全组。
资源配置
配置实例总数和单实例资源配额。
如果您部署实例的环境所属的集群为阿里云容器服务Kubernetes版(ACK)和 阿里云容器服务Kubernetes版(ASK)时,您可填写CPU和内存配额:
CPU资源的约束和请求以CPU为单位,如果数值为0.1则等价为100 mCPU;
内存的约束和请求以字节为单位,如果数值为1024 MiB则等价为1024 MB。资源限制需大于资源预留。
如果您部署实例的环境所属的集群为阿里云BizWorks Serverless集群,您只能选择vCPU和内存的已有配额选项。
在新建实例部署 - 环境配置面板中,完成环境配置后,单击开始部署。环境配置面板包含以下配置项:生命周期管理(启动命令、启动参数、启动后命令PostStart、停止前命令PreStop)、环境变量(按Key/Type/Value配置自定义变量)、存储(配置存储类型、挂载源和容器中的路径)、健康检查(Liveness检查,可设置initialDelaySeconds、PeriodSeconds、TimeoutSeconds等参数,检查模式支持httpGet并指定Path、Port和Scheme)以及应用监控(支持阿里云ARMS类型)。
可选:设置生命周期管理。
7df008c2411">开启 生命周期管理 开关后,可配置以下字段:启动命令、启动参数(单击 添加 按钮添加)、启动后命令(PostStart)(格式示例:["\/bin\/sh","-c","echo Hello from this PostStart handler"])、停止前命令(PreStop)(格式示例:["\/bin\/sh","-c","nginx -s quit; while killall -0 nginx; do sleep 1; done"])。
相关配置项说明,请参见部署和管理中心应用实例。
页面提示创建成功,同时环境中新增一个正在部署中的实例卡片。完成部署配置后,在开发环境页面单击创建部署实例。创建成功后,部署记录将显示执行中状态,同时展示部署实例名称、操作用户及执行时间等信息。