当前位置: 首页 > news >正文

承德网站建设案例做app网站的软件

承德网站建设案例,做app网站的软件,泉州企业网站建站模板,门户网站建设方案费用背景 我们核心业务中订单完成时#xff0c;需要完成后续的连带业务#xff0c;扣件库存库存、增加积分、通知商家等。 如下图的架构#xff1a; 这样设计出来导致我们的核心业务和其他业务耦合#xff0c;每次新增连带业务或者去掉连带业务都需要修改核心业务。 一方面需要完成后续的连带业务扣件库存库存、增加积分、通知商家等。 如下图的架构 这样设计出来导致我们的核心业务和其他业务耦合每次新增连带业务或者去掉连带业务都需要修改核心业务。 一方面不合符软件设计的OCP原则二方面修改核心业务风险、成本也是很大的。 方案 基于上述方案的问题我们设计了新的方案。新的方案可以动态接入新的连带业务不会入侵核心业务降低了变动的风险和成本。 1. 订单下发统一的ORDER_CREATED事件消息 消息格式如下 {     enterEvent:ORDER_CREATED,     data:{         order_id:OR2023111000000001     },     source:ORDER,     datetime:2023-11-10 21:40:52 } 2. 所有核心业务发送到MQ的消息统一发送到分发中心DISPATCHER_CENTER。 消息统一中心获取配置的路由信息将消息发送到MQ。 *** author darmi*/ Component public class KafkaEventListener {Autowiredprivate MsgDispatcherCenterRepository msgDispatcherCenterRepository;Autowiredprivate KafkaTemplateString, String kafkaTemplate;AutowiredQualifier(value eventExecutor)private Executor eventExecutor;KafkaListener(topics {DISPATCHER_CENTER})public void dispatchMsg(String event) {DispatcherCenterEvent dispatcherCenterEvent DispatcherCenterEvent.getObject(event);eventExecutor.execute(() -{msgDispatcherCenterRepository.findMsgDispatcherCenterByCenterEventAndActive(dispatcherCenterEvent.getCenterEvent(), Boolean.TRUE).forEach(e - kafkaTemplate.send(e.getRouteEvent(), dispatcherCenterEvent.getData()));});}} Mysql的消息路由表设计如下 CREATE TABLE tb_msg_dispatcher_ center (id int NOT NULL AUTO_INCREMENT,center_event varchar(255) NOT NULL,route_event varchar(255) NOT NULL,active tinyint NOT NULL DEFAULT 0,created timestamp NOT NULL,updated timestamp NOT NULL,PRIMARY KEY (id),KEY idx_center_event_active (center_event,active) ) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_0900_ai_ci; 3. 各个业务监听消息处理自己的业务。 KafkaListener(topics {ADD_POINT})public void addPoint(String event) {// 添加积分}KafkaListener(topics {REDUCE_STOCK})public void reduceStock(String event) {// 扣件库存}KafkaListener(topics {NOTICE_MERCHANT})public void noticeMerchant(String event) {// 通知商家}总结 这个方案是一个简易可行的方案符合快速上手并实施。在人力、时间、成本不充足的情况下基本能满足我们的需求。 如果想让它作为平台级的技术组件推广还有一些细节的点可以优化。 核心的业务是否也可以分离出来通过平台配置的方式自动分发数据到消息中心。消息中心每次都会从数据库拉去路由表信息这样性能不好可以放在分布式缓存或本地内存。这时需要注意缓存数据的一致性问题。分发中心是否存在性能瓶颈、集群化等。连带业务是否也可以通过配置自动拉取MQ的消息。
http://www.hkea.cn/news/14391205/

相关文章:

  • 世界最受欢迎的免费架站平台html个人主页代码编写
  • 深圳网站seo推广西安网站建设 招聘
  • ppt做视频的模板下载网站h5彩票网站怎么做
  • 昆山规划与建设局网站关键词优化排名有哪些牛霸天的软件1
  • 发布文章后马上更新网站主页房地产设计管理的思路
  • 做网站怎么开后台网站建设功能最全的软件
  • 在哪网站可以做农信社模拟试卷国际营销信息系统
  • 网站源码官网华为商城网站建设
  • ai怎么做自己的网站弘泽建设集团网站
  • 黄埔商城网站建设discuz可以做门户网站吗
  • 网站可视化后台wordpress自动发布模块
  • 郓城那家网站做的好合肥商务科技学校网站建设
  • 奉化建设局网站如何制作app软件下载
  • 音乐网站怎么做社交的旅游网站模块
  • 池州网站建设兼职百度拍照搜题
  • 做网站建设业务如何新建网页
  • 珠宝网站官网建设需求项目之家app
  • 手机建立网站软件单页网站制作需要多少钱
  • 做店标 做店招的网站线上推广渠道有哪些方式
  • 手机网站一般做多大尺寸ai制作网页
  • 惠州网站建设外包基于大数据的精准营销
  • 小城市企业网站建设广州哪个网站建设公司好
  • 群站优化之链轮模式网络私人定制网站
  • 广告 网站wordpress如何添加首页描述
  • 信誉好的盐城网站开发广州官网建设
  • 乐山市建设局网站学雷锋 做美德少年网站
  • 点击网络怎么做网站扫描做电子版网站
  • 网站建设需要固定ip地址吗企业解决方案英文
  • 失业保险网站厦门网站建设外贸
  • 网站网站开发者犯法吗免费网站收录