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

企业网站源码怎么用wordpress防爆破插件

企业网站源码怎么用,wordpress防爆破插件,邯郸信息港人才招聘,网站怎么做市场分析事务消息介绍 在一些对数据一致性有强需求的场景#xff0c;可以用 Apache RocketMQ 事务消息来解决#xff0c;从而保证上下游数据的一致性。 以电商交易场景为例#xff0c;用户支付订单这一核心操作的同时会涉及到下游物流发货、积分变更、购物车状态清空等多个子系统的…事务消息介绍 在一些对数据一致性有强需求的场景可以用 Apache RocketMQ 事务消息来解决从而保证上下游数据的一致性。 以电商交易场景为例用户支付订单这一核心操作的同时会涉及到下游物流发货、积分变更、购物车状态清空等多个子系统的变更。当前业务的处理分支包括 主分支订单系统状态更新由未支付变更为支付成功。物流系统状态新增新增待发货物流记录创建订单物流记录。积分系统状态变更变更用户积分更新用户积分表。购物车系统状态变更清空购物车更新用户购物车记录。 当主分支订单系统状态更新失败后物流、积分、购物车系统都不应该接收到消息 事务消息的发送流程 使用普通消息是做不到的因为他会直接将消息发送到topic中 而事务消息参考了两阶段提交的原理 先把消息发送broker中当消息发送成功后会执行本地事务通过本地事务的执行情况返回一个状态状态对应三种情况 LocalTransactionState.UNKNOW需要broker调用发送端的回查机制LocalTransactionState.COMMIT_MESSAGEbroker将消息发送到指定的topic此时消费端可以接收到消息LocalTransactionState.ROLLBACK_MESSAGEbroker丢弃消息不发送到指定的topic消费端接收不到消息 整个事务消息的详细交互流程如下图所示 Test public void sendTrans() throws MQBrokerException, RemotingException, InterruptedException, MQClientException {// 创建事务消息发送客户端TransactionMQProducer transProducer new TransactionMQProducer(test-trans-producer);transProducer.setNamesrvAddr(RocketMQConfig.NAME_SERVER_ADDR);// 指定回查事务消息时的线程池ExecutorService executorService new ThreadPoolExecutor(2, 5, 100, TimeUnit.SECONDS, new ArrayBlockingQueue(2000), new ThreadFactory() {Overridepublic Thread newThread(Runnable r) {Thread thread new Thread(r);thread.setName(client-transaction-msg-check-thread);return thread;}});transProducer.setExecutorService(executorService);// 设置事务监听器transProducer.setTransactionListener(new TransactionListener() {// 执行本地事务Overridepublic LocalTransactionState executeLocalTransaction(Message message, Object o) {System.out.println(Thread.currentThread().getName() 执行本地事务);// 触发回查机制return LocalTransactionState.UNKNOW;}// 回查本地事务如果执行本地事务返回UNKNOW状态或者生产者应用退出导致本地事务未提交任何状态Overridepublic LocalTransactionState checkLocalTransaction(MessageExt messageExt) {System.out.println(Thread.currentThread().getName() 触发事务回查);// 提交事务return LocalTransactionState.COMMIT_MESSAGE;}});transProducer.start();Message message new Message(RocketMQConfig.TEST_TOPIC, hello world.getBytes());// 发送事务消息SendResult send transProducer.sendMessageInTransaction(message,null);System.out.println(send.getSendStatus());Thread.sleep(Integer.MAX_VALUE); }注需要注意的是事务消息的生产组名称 ProducerGroupName不能随意设置。事务消息有回查机制回查时Broker端如果发现原始生产者已经崩溃则会联系同一生产者组的其他生产者实例回查本地事务执行情况以Commit或Rollback半事务消息。
http://www.dnsts.com.cn/news/37916.html

相关文章:

  • 网站域名实名认证官网好网站建设公司昆明
  • 公司设计网站需要注意哪些壹舍设计公司
  • 百度网站怎么提升排名阿里云可以建设多个网站
  • php 视频播放网站开发陕西住房和城乡建设厅中心网站
  • dedecms建手机网站流程网站开发课程建议
  • html完整网站开发wordpress 根分类
  • 一个做问卷调查的网站好网站是专门对生活中的一些所谓常识做辟谣的
  • 像淘宝购物网站建设需要哪些专业人员做网站项目收获
  • 国外一个做同人动漫的网站企业年报申报入口官网
  • 如何建立国外网站wordpress主题ux
  • 如何设计网站布局苏州朗冠网站建设公司
  • 网站服务器费用明细重庆营销网站建设公司排名
  • 镇平哪家网站做的好莱芜网红小莱芜
  • 手机免费自建网站大庆市网站建设
  • 网站调研方法有哪些内容杭州seo服务公司
  • 用手机做网站的流程电商设计详情页
  • 建电影网站泰安市大众人才网
  • 网站改版意见做图片网站会被
  • 中国水利建设网站单页响应式网站模板
  • 深圳网站建设 卓越迈乌市地区建设工程门户网站
  • 如何提高网站的知名度网站认领
  • 做平台还要做网站吗四川品牌网站建设
  • 全国十大网站建设公司qq个人中心网页版
  • 现货交易平台排行榜佛山网站优化怎么做
  • 做网站需服务器吗怎样开网上商城
  • 淮南网站建设淮南设计部联盟网站
  • 宁波四方网络网站建设wordpress相册程序
  • 网站是一个链接的页面结合吗php 网站开发框架ap
  • 设计logo网站是平面设计不wordpress新手教程
  • 如何做网站需求表格清单烟台网站建设 共赢