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

网站禁止右键复制代码/网上宣传方法有哪些

网站禁止右键复制代码,网上宣传方法有哪些,昆明做网站seo,企业运营管理平台前言:在购物系统中有一个订单催付的场景,如果客户在购物系统下单后在设定的时间内未付款那么就会给客户推送一条短信提醒,这是一个比较简单的功能,但是,商家对我们来说,肯定是要区分大客户和小客户的&#…

前言:在购物系统中有一个订单催付的场景,如果客户在购物系统下单后在设定的时间内未付款那么就会给客户推送一条短信提醒,这是一个比较简单的功能,但是,商家对我们来说,肯定是要区分大客户和小客户的,比如像苹果、华为、小米这样的大商家一年能给我们创造很大的利润,在业务高峰时期,订单堆积,来不及处理,而为了创造最大的利润,他们的订单必须得到优先处理,而曾经的后端系统是使用redis来存放短信提醒的,并通过定时轮询实现短信发送,但大家都知道redis只能用List做一个简简单单的消息队列,并不能实现一个优先级的场景,所以后来需要采用RabbitMQ对系统进行改造和优化,如果发现是大客户的订单给一个相对比较高的优先级,否则就是默认优先级,而实现优先级就用到了RabbitMQ的优先级队列。

1、在config包里新建一个名为PriorityQueueConfig的类用于编写配置交换机、队列、routingkey的代码

代码如下:

package com.ken.springbootrqbbitmq.config;import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class PriorityQueueConfig {//交换机public static final String EXCHANGE_NAME = "priority_exchange";//队列public static final String QUEUE_NAME = "priority_queue";//routingkeypublic static final String ROUTING_KEY = "priority";//声明交换机@Bean("directExchange")public DirectExchange priorityExchange() {return new DirectExchange(EXCHANGE_NAME);}//声明队列@Bean("priorityQueue")public Queue priorityQueue() {//官方允许范围为0-255,这里设置10,即允许优先级的范围为0-10return QueueBuilder.durable().withArgument("x-max-priority",10).build();}//绑定交换机和队列@Beanpublic Binding warningQueueBindingBackupExchange(@Qualifier("priorityQueue") Queue priorityQueue,@Qualifier("directExchange") DirectExchange directExchange) {return BindingBuilder.bind(priorityQueue).to(directExchange).with(ROUTING_KEY);}}

2、在controller包里新建一个名为SendPriorityMsgController的类用于编写充当生产者发送消息的代码

代码如下:

package com.ken.springbootrqbbitmq.controller;import com.ken.springbootrqbbitmq.config.PriorityQueueConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@Slf4j
@RestController
@RequestMapping("/priority")
public class SendPriorityMsgController {@Autowired(required = false)private RabbitTemplate rabbitTemplate;//发消息@GetMapping("/sendPriorityMessage/{message}")public void sendMessage(@PathVariable String message) {for (int i = 1; i <= 10; i++) {String msg = message + i;if(i == 5) {//给第5条消息设置优先级为5(数字越大优先级越高)rabbitTemplate.convertAndSend(PriorityQueueConfig.EXCHANGE_NAME,PriorityQueueConfig.ROUTING_KEY,msg,correlationData -> {correlationData.getMessageProperties().setPriority(5);return correlationData;});}else {rabbitTemplate.convertAndSend(PriorityQueueConfig.EXCHANGE_NAME,PriorityQueueConfig.ROUTING_KEY,msg);}log.info("发送消息内容:{}",msg);}}}

3、在consumer包里新建一个名为PriorityQueueConsumer的类用于编写充当消费者消费消息的代码

代码如下:

package com.ken.springbootrqbbitmq.consumer;import com.ken.springbootrqbbitmq.config.PriorityQueueConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;@Slf4j
@Component
public class PriorityQueueConsumer {@RabbitListener(queues = PriorityQueueConfig.QUEUE_NAME)public void receivePriorityMsg(Message message) {String msg = new String(message.getBody());log.info("接收到的消息为:{}",msg);}}

4、先注释消费者的代码,然后启动项目, 在浏览器地址栏调用发送消息的接口

http://localhost:8080/priority/sendPriorityMessage/我是消息

生产者发送消息后,没有消费者消费消息,消息就会堆积在队列中,可以用于模拟在业务高峰时期,订单堆积,来不及处理的场景。

效果图:

5、去掉消费者代码里的注释,然后重新启动项目,可以得见消息被消费者消费了,且第5条消息由于优先级是5,在所有的消息里优先级最高,被优先消费了,这证明我们的优先队列成功实现了

 效果图:

http://www.jmfq.cn/news/5024665.html

相关文章:

  • 网站建设的原则/重庆百度seo代理
  • 住宅和城乡建设部网站/百度指数有三个功能模块
  • 中山古镇做网站/百度推广营销中心
  • 做同城网站有哪些/seo关键词排名教程
  • 企业网站开发北京/关键词整站优化
  • 网站备案信息可以更改吗/seo网站排名助手
  • 网站设计多少钱市场价/营销策划公司介绍
  • 门网站制作/专业网站seo推广
  • 用wordpress建站之后如何优化/成都seo培训班
  • 做网站彩票代理犯法吗/搭建一个网站的流程
  • wordpress评论回复通知/seo关键词排名注册价格
  • 江西做网站的公司/独立站优化
  • 做故障风的头像的网站/市场营销方案范文
  • 网站显示百度众测是怎么做的/想做电商怎么入手
  • 学校网站建设源代码/网站百度关键词优化
  • wordpress 自定义评论/惠州百度关键词优化
  • 邢台手机网站建设多少钱/网站维护费一年多少钱
  • 郑州网站免费制作/百度竞价是什么
  • 杭州网站如何制作/打开app下载
  • 不成立公司怎么做企业网站/网页设计网站
  • 福田沙头网站建设/网站收录提交
  • 如何申请域名做网站/直销怎么做才最快成功
  • wordpress追加表/谷歌seo搜索
  • 体育设施建设网站/百度关键词排名快速排名
  • 私自做彩票网站销售犯法么/html网页制作步骤
  • 高端网站设计新感觉建站/网站的优化公司
  • 交通门户网站建设/seo优化团队
  • 铜陵高端网站建设/公司广告推广
  • 网站开发亿玛酷信赖/百度爱采购平台官网
  • 郑州工程造价信息网/广州seo公司