电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

苍穹分应用部署方法

来源:金蝶云社区作者:金蝶2024-09-2312

苍穹分应用部署方法

1 苍穹的微服务架构

         金蝶云·苍穹是采用云原生架构的分布式应用,相比单体应用架构,苍穹的微服务架构能更加保证服务的稳定可靠。单体应用和微服务架构的优缺点如下:

单体应用架构微服务架构

部署简单

部署复杂

运维简单

运维复杂

部署成本低

部署成本高

应用耦合高

应用解耦

技术栈统一

技术异构性

应用不隔离

应用可隔离

服务无法扩展

服务可任意伸缩

迭代周期长

快速迭代

可复用性差

可复用性高

部署固定

部署灵活

         金蝶云·苍穹采用动态微服务技术,使得苍穹应用部署非常灵活。可以像单体应用一样所有应用部署在一起(实际是微服务,服务可任意伸缩),也可以拆分应用部署实现每个小应用的相互隔离。

image.webp

2 分应用部署方法

金蝶云·苍穹分应用部署可通过环境变量进行配置:

描述

appSplit

true

分应用的开关,true为启用,false为不启用。注意,同一集群内,appSplit值必须保持一致

appIds

bos,bos-up,base,basedata,bd,sbd,wf,wftask,gmc,custom

申明了该服务上运行的应用ID,会注册到zookeeper中用于服务发现与调用。注意appIds中的i是大写的

BIZLIBS

fi.xml ,fi-cal.xml, scm.xml

appstore目录下的xml中维护了一组appIds和所需要的加载的应用包。

3 标准按云拆分应用

类别服务云微服务名称服务说明appIdsBIZLIBSBOSLIBSTRDLIBS

苍穹

平台微服务

web

web服务,网关

fi-er-web,scm-pur-web,ssc-task-web

bos.xml

trd.xml

mservice-bos

平台

bos,bos-up,base,basedata,bd,sbd,gmc

bd-bd,biz-bos-ext

bos.xml

trd.xml

mservice-wf

流程服务云

wftask,wf

bd-bd,biz-bos-ext

bos.xml

trd.xml

mservice-qing

轻分析、轻报表

qing,qing_rpt

bd-bd,biz-bos-ext

bos.xml,bos-qing.xml

trd.xml,trd-qing

mservice-isc

集成服务云

xml中已配置

isc.xml

bos.xml

trd.xml

mservice-ai

AI服务云

xml中已配置

ai.xml,data.xml

bos.xml

trd.xml

mservice-rpa

RPA服务云

xml中已配置

rpac.xml

bos.xml

trd.xml

mservice-bsc

区块链服务云

xml中已配置

bsc.xml

bos.xml

trd.xml

mservice-bamp

基础中台服务云

xml中已配置

bamp.xml

bos.xml

trd.xml

星瀚

财务云

mservic-std

总账、资产、应收、应付、出纳、会计平台、智能核算

xml中已配置

fi-std.xml

bos.xml

trd.xml

mservic-er

人人费用/差旅

xml中已配置

fi-er.xml

bos.xml

trd.xml

mservic-ssc

财务共享

xml中已配置

ssc.xml

bos.xml

trd.xml

mservic-pmgt

项目管理

xml中已配置

pmgt.xml,pccs.xml

bos.xml

trd.xml

资金云

mservice-tmc

资金

xml中已配置

tmc.xml

bos.xml

trd.xml

mservice-ebg

银企云

xml中已配置

ebg.xml

bos.xml

trd.xml

企业绩效云

mservice-bcm

合并报表

xml中已配置

bcm.xml

bos.xml

trd.xml

mservice-epm

预算管理

xml中已配置

epm.xml

bos.xml

trd.xml

税务云

mservice-taxc

税务

xml中已配置

taxc.xml

bos.xml

trd.xml

发票云

mservice-imc

发票

xml中已配置

imc.xml

bos.xml

trd.xml

供应链云

mservice-scmc

供应链云

xml中已配置

scmc.xml

bos.xml

trd.xml

mservice-cal

存货核算/出库核算

xml中已配置

fi-cal.xml,fi-calx.xml

bos.xml

trd.xml

mservice-macc

成本管理

xml中已配置

macc.xml

bos.xml

trd.xml

mservice-scm

供应商协同云(含地产)

xml中已配置

scm.xml

bos.xml

trd.xml

mservice-mpscmm

供应链和制造服务云

xml中已配置

mpscmm.xml

bos.xml

trd.xml

制造云

mservice-mmc

制造云

xml中已配置

mmc.xml

bos.xml

trd.xml

渠道云

mservice-drp

渠道云/全渠道云

xml中已配置

drp.xml,occ.xml

bos.xml

trd.xml

质量云

mservice-qmc

质量云

xml中已配置

qmc.xml

bos.xml

trd.xml

实施配置中心

mservice-ricc

实施配置中心

xml中已配置

bamp-ricc.xml

bos.xml

trd.xml

HR

mservice-hr

核心人力/HR中台服务/组织管理

xml中已配置

hr.xml,odc.xml,hrmp.xml

bos.xml

trd.xml

mservice-hjm

薪酬管理

xml中已配置

swc.xml

bos.xml

trd.xml

mservice-hspm

个税

xml中已配置

sit.xml

bos.xml

trd.xml


说明:

1、分应用的微服务名称(appName)为推荐名称,便于区分,也可自定义

2、目前拆分的容器节点为推荐最小粒度,若需要再细分应用(部分应用尚未完全解耦),请咨询相关模块的架构师

3、在此最小细分粒度上,根据项目实际情况,将使用量大的独立出来,对于未使用或者使用量较小的应用可合并部署到同一个容器节点,如可以将未使用或者使用量较小的应用部署在mservice-others容器节点上

4、分应用部署的情况,bos节点建议独立部署,因bos.xml中没带有appIds,所以需要显式配置appIds=bos,bos-up,basedata,sbd,wf,wftask,gmc,custom(其中wf、wftask可以拆分独立部署),同时需要加载业务基础包:BIZLIBS=bd-bd,biz-bos-ext。

5、分应用部署的主要目的是为了应用隔离,所以请保持appIdsappIdsFromAppstore的唯一性。避免应用调度混乱,失去分应用部署的意义。

6、custom这个appIds的用途是如果没有显式配置二开的appIds或者到xml中的话,就会默认调度到custom的应用节点上,如果custom节点没有加载二开包的话,此时就会包该容器二开的类找不到。


如图:

image.webp



4 其他应用独立部署

4.1 后台事务独立部署

后台事务节点标志的关键参数:

bos节点应用JVM_OPTS中添加: -DSchedule.Message.AccessType=["REALTIMEJOB"]
工作流应用节点JVM_OPTS中添加:  -DSchedule.Message.AccessType=["WorkFlowJOB","REALTIMEJOB"]
调度应用JVM_OPTS中添加(加载全量包): -DSchedule.Message.AccessType=["BIZJOB","REALTIMEJOB"] -Ddubbo.registry.register=false -DSchedule.deployMode=execute_node -Dmq.consumer.maxpoolsize=40

参数说明:

BIZJOB:能处理所有后台事务
WorkFlowJOB:只处理工作流的后台事务
dubbo.registry.register=false:不注册微服务
后台事务是可以指定appId执行的,如果找不到appId就会在custom节点上运行。
其他分应用节点如果不想处理后台事务也可以加: -DSchedule.Message.AccessType=["REALTIMEJOB"]
这样的话处理后台事务的节点计算资源可能不太够,需要根据现场环境真实情况而定。

 

例如,业务容器都不处理后台事务,后台事务都由一组服务完成

创建后台事务的容器服务(可以参考bos容器节点环境变量),并修改部分环境变量如下:

(1)JVM_OPTS中添加:-DSchedule.Message.AccessType=["BIZJOB","REALTIMEJOB"] -Ddubbo.registry.register=false -DSchedule.deployMode=execute_node -Dmq.consumer.maxpoolsize=40

(2)BIZLIBS需要加载全量的业务包。由于配置了dubbo.registry.register=false,即后台事务节点不会注册微服务,所以可以配置所有的xml文件,用逗号隔开即可。

 

除了后台事务节点的其他所有容器节点的JVM_OPTS中添加: 

-DSc

苍穹分应用部署方法

1 苍穹的微服务架构 金蝶云·苍穹是采用云原生架构的分布式应用,相比单体应用架构,苍穹的微服务架构能更加保证服务的稳定可...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信