测试环境治理

dubbo调用

使用统一测试环境zk,不允许私自搭建zk,服务通过分组注册到zk
测试环境zk集群 zookeeper://1:2181?backup=2:2181,3:2181
dubbo-admin http://3:9090/dubbo-admin/

dubbo服务注册分组

auto-config.xml添加dubbo.service.group(不一定要这个名字,配置名字可以自己起)分组配置,required="false"表示配置项可为空

<group name="dubbo">
    <property name="dubbo.service.group" required="false" description="服务版本" />
</group>

在provier里添加group属性,先不要在配置中心添加dubbo.service.group分组配置,后面再统一添加,#if($dubbo_service_group)表示dubbo.service.group配置存在时设置分组属性,if里判断dubbo.service.group要改为dubbo_service_group,“.”velocity(autoconfig使用velocity模版引擎)会认为是对象属性,判断会有问题

<dubbo:provider #if($dubbo_service_group) group="${dubbo.service.group}" #end />  

dubbo消费调用分组

消费分组设置需要对调用的服务进行梳理,同一个应用提供的服务设置一个分组配置

例如下面3个服务是riskmanagement提供的服务

<!--风控-查询最新授信信息服务-->
<dubbo:reference id="decisionResultFacade" interface="com.touna.credit.riskmanagement.facade.intf.DecisionResultFacade" />
<!--风控-预授信服务-->
<dubbo:reference id="creditRecordFacade" interface="com.touna.credit.riskmanagement.facade.intf.CreditRecordFacade" />
<!--风控-车主贷白名单服务V5.2.0-->
<dubbo:reference id="whitelistDetailFacade" interface="com.touna.credit.riskmanagement.facade.intf.WhitelistDetailFacade" />

auto-config.xml添加dubbo.riskmanagement.group(不一定要这个名字,配置名字可以自己起)分组配置

<group name="dubbo">
    <property name="dubbo.service.group" required="false" description="服务版本" />
    <property name="dubbo.riskmanagement.group" required="false" description="riskmanagement服务版本" />
</group>

先不要在配置中心里添加dubbo.riskmanagement.group分组配置,后面再统一添加

在reference里添加group属性,#if($dubbo_riskmanagement_group)表示dubbo.riskmanagement.group配置存在时设置分组属性

<!--风控-查询最新授信信息服务-->
<dubbo:reference id="decisionResultFacade" interface="com.touna.credit.riskmanagement.facade.intf.DecisionResultFacade" #if($dubbo_riskmanagement_group) group="${dubbo.riskmanagement.group}" #end />
<!--风控-预授信服务-->
<dubbo:reference id="creditRecordFacade" interface="com.touna.credit.riskmanagement.facade.intf.CreditRecordFacade" #if($dubbo_riskmanagement_group) group="${dubbo.riskmanagement.group}" #end />
<!--风控-车主贷白名单服务V5.2.0-->
<dubbo:reference id="whitelistDetailFacade" interface="com.touna.credit.riskmanagement.facade.intf.WhitelistDetailFacade" #if($dubbo_riskmanagement_group) group="${dubbo.riskmanagement.group}" #end />

发送消息

使用统一测试环境MQ,不允许私自搭建MQ
测试环境MQ 1:9876;2:9876
rocketmq-console http://3:8080

rocketmq寻址(host绑定):
3 jmenv.tbsite.net

消息通过在生产分组名称和消费分组名称里指定路由分组实现消息路由
DefaultMQProducer producer = new DefaultMQProducer("test_producer_group_name%%h5");
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("test_consumer_group_name%%h5");

生产者分组名称和消费者分组名称里的特定符号%%后面是路由分组信息,例如:指定为h5(表示h5项目路由分组),指定路由分组的生产者发出来的消息只能被相同路由分组的消费者消费,test_producer_group_name%%h5 生产者发送的消息只能被 xxxx%%h5 消费者消费

因为需要在生产者分组名称和消费者分组名称里设置路由分组信息,所以要把这两个名称做为配置项,在配置中心新增配置项rocketmq.produce.group.name、rocketmq.consumer.group.name,新增stable版本配置值xxxx%%stable(原来名称后加%%stable),stable环境取这个配置信息
DefaultMQProducer producer = new DefaultMQProducer("${rocketmq.produce.group.name}");
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("${rocketmq.consumer.group.name}");

环境部署指南

假设存在以下系统调用关系:

项目1

只涉及系统A修改,那只需要部署系统A的项目1环境,其他系统不需要部署,使用稳定环境提供的服务

项目2

涉及系统A和系统B修改,需要部署系统A和系统B的项目环境

项目3

涉及系统A和系统B修改,但监听处理系统D的消息的逻辑发生改变,所以需要部署系统D的项目环境,并且设置消息路由分组,让系统D的消息能回到系统A处理

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值