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

企业买好域名后怎么做网站wordpress需要调用缩略图

企业买好域名后怎么做网站,wordpress需要调用缩略图,做类似淘宝的网站开发需要什么,阿里邮箱 网站开发1.RabbitMQ延时队列 延迟队列存储的对象是对应的延迟消息#xff0c;所谓“延迟消息”是指当消息被发送以后#xff0c;并不想让消费者立刻拿到消息#xff0c;而是等待特定时间后#xff0c;消费者才能拿到这个消息进行消费 注意RabbitMQ并没有延时队列慨念,…1.RabbitMQ延时队列 延迟队列存储的对象是对应的延迟消息所谓“延迟消息”是指当消息被发送以后并不想让消费者立刻拿到消息而是等待特定时间后消费者才能拿到这个消息进行消费 注意RabbitMQ并没有延时队列慨念,其实是通过死信实现 应用场景:订单30分钟未支付取消… 2.整合springboot 创建springboot Maven项目,其pom文件内容如下: ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.4.2/versionrelativePath/ !-- lookup parent from repository --/parentgroupIdcom.hong/groupIdartifactIdspringboot-rabbitmq/artifactIdversion0.0.1-SNAPSHOT/versionnamespringboot-rabbitmq/namedescriptionspringboot整合Rabbitmq/descriptionpropertiesjava.version17/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependency!--RabbitMQ 依赖--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependencydependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactIdversion1.2.47/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.18.24/version/dependency!--swagger--dependencygroupIdio.springfox/groupIdartifactIdspringfox-swagger2/artifactIdversion3.0.0/version/dependencydependencygroupIdio.springfox/groupIdartifactIdspringfox-swagger-ui/artifactIdversion3.0.0/version/dependency!--RabbitMQ 测试依赖--dependencygroupIdorg.springframework.amqp/groupIdartifactIdspring-rabbit-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion2.4.2/version/plugin/plugins/build/project3.配置文件application.properties spring.rabbitmq.host10.211.55.4 spring.rabbitmq.port5672 spring.rabbitmq.usernameadmin spring.rabbitmq.password1234564.添加Swagger配置类 package com.hong.springboot.rabbitmq.config;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2;/*** Description: Swagger配置类* Author: hong* Date: 2024-01-24 10:38* Version: 1.0**/ Configuration EnableSwagger2 public class SwaggerConfig {Beanpublic Docket webApiConfig() {return new Docket(DocumentationType.SWAGGER_2).groupName(webApi).apiInfo(webApiInfo()).select().build();}private ApiInfo webApiInfo() {return new ApiInfoBuilder().title(rabbitmq接口文档).description(本文档描述了 rabbitmq 微服务接口定义).version(1.0).contact(new Contact(JAVA小生不才, https://blog.csdn.net/qq_41596346?spm1011.2423.3001.5343, hst1406959716163.com)).build();} }5.队列TTL配置列 package com.hong.springboot.rabbitmq.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;import java.util.HashMap; import java.util.Map;/*** Description: TTL队列配置类* Author: hong* Date: 2024-01-24 09:57* Version: 1.0**/Configuration public class TTLQueeueConfig {public static final String X_EXCHANGE X;public static final String QUEUE_A QUEUE_A;public static final String QUEUE_B QUEUE_B;//死信交换机public static final String Y_DEAD_LETTER_EXCHANGE Y;//死信队列public static final String DEAD_LETTER_QUEUE QD;// 声明 xExchangeBean(xExchange)public DirectExchange xExchange() {return new DirectExchange(X_EXCHANGE);}// 声明 死信队列交换机Bean(yExchange)public DirectExchange yExchange() {return new DirectExchange(Y_DEAD_LETTER_EXCHANGE);}//声明队列 A ttl 为 10s 并绑定到对应的死信交换机Bean(queueA)public Queue queueA() {MapString, Object args new HashMap(3);//声明当前队列绑定的死信交换机args.put(x-dead-letter-exchange, Y_DEAD_LETTER_EXCHANGE);//声明当前队列的死信路由 keyargs.put(x-dead-letter-routing-key, YD);//声明队列的 TTLargs.put(x-message-ttl, 10000);return QueueBuilder.durable(QUEUE_A).withArguments(args).build();}// 声明队列 A 绑定 X 交换机Beanpublic Binding queueaBindingX(Qualifier(queueA) Queue queueA,Qualifier(xExchange) DirectExchange xExchange) {return BindingBuilder.bind(queueA).to(xExchange).with(XA);}//声明队列 B ttl 为 40s 并绑定到对应的死信交换机Bean(queueB)public Queue queueB() {MapString, Object args new HashMap(3);//声明当前队列绑定的死信交换机args.put(x-dead-letter-exchange, Y_DEAD_LETTER_EXCHANGE);//声明当前队列的死信路由 keyargs.put(x-dead-letter-routing-key, YD);//声明队列的 TTLargs.put(x-message-ttl, 40000);return QueueBuilder.durable(QUEUE_B).withArguments(args).build();}//声明死信队列 QDBean(queueD)public Queue queueD() {return new Queue(DEAD_LETTER_QUEUE);}//声明队列 B 绑定 X 交换机Beanpublic Binding queuebBindingX(Qualifier(queueB) Queue queueB,Qualifier(xExchange) DirectExchange xExchange) {return BindingBuilder.bind(queueB).to(xExchange).with(XB);}//声明死信队列 QD 绑定关系Beanpublic Binding deadLetterBindingQAD(Qualifier(queueD) Queue queueD,Qualifier(yExchange) DirectExchange yExchange) {return BindingBuilder.bind(queueD).to(yExchange).with(YD);} }6.消息生产者 package com.hong.springboot.rabbitmq.controller;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;import java.text.SimpleDateFormat; import java.util.Date;/*** Description: 消息生产者* Author: hong* Date: 2024-01-28 10:15* Version: 1.0**/ Slf4j RequestMapping(ttl) RestController public class SendMessageController {Autowiredprivate RabbitTemplate rabbitTemplate;GetMapping(sendMsg/{message})public void sendMsg(PathVariable String message) {log.info(当前时间{},发送一条信息给两个 TTL 队列:{},new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date()) , message);rabbitTemplate.convertAndSend(X, XA, 消息来自ttl为10S的QA队列: message);rabbitTemplate.convertAndSend(X, XB, 消息来自ttl为10S的QB队列: message);} }7.消息消费者代码 package com.hong.springboot.rabbitmq.consumer;import com.hong.springboot.rabbitmq.config.TTLQueeueConfig; import com.rabbitmq.client.Channel; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component;import java.text.SimpleDateFormat; import java.util.Date;/*** Description: 死信消费者* Author: hong* Date: 2024-01-28 10:22* Version: 1.0**/ Slf4j Component public class DeadLetterQueueConsumer {RabbitListener(queues QD)public void receiveD(Message message, Channel channel) {String msg new String(message.getBody());log.info(当前时间{},收到死信队列信息{},new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date()) , msg);}}启动项目发起http://localhost:8080/ttl/sendMsg/JAVA%E5%B0%8F%E7%94%9F%E4%B8%8D%E6%89%8D请求 8.代码优化 QA和QB的ttl都写死啦若是再来1个时间不同的咋处理 8.1.TTLQueeueConfig优化 代码中添加如下代码 //QC 不设置ttl 消息自带ttlpublic static final String QUEUE_C QC;//声明队列 C 死信交换机 Bean(queueC)public Queue queueC() {MapString, Object args new HashMap(3);//声明当前队列绑定的死信交换机args.put(x-dead-letter-exchange, Y_DEAD_LETTER_EXCHANGE);//声明当前队列的死信路由 keyargs.put(x-dead-letter-routing-key, YD);//没有声明 TTL 属性return QueueBuilder.durable(QUEUE_C).withArguments(args).build();}//声明队列C绑定 X 交换机Beanpublic Binding queueCBindingX(Qualifier(queueC) Queue queueC,Qualifier(xExchange) DirectExchange xExchange) {return BindingBuilder.bind(queueC).to(xExchange).with(XC);}8.2.生产者代码优化 添加如下方法 /*** 延时队列优化* param message 消息* param ttlTime 延时的毫秒*/GetMapping(sendExpirationMsg/{message}/{ttlTime})public void sendMsg(PathVariable String message, PathVariable String ttlTime) {rabbitTemplate.convertAndSend(X, XC, message, correlationData - {correlationData.getMessageProperties().setExpiration(ttlTime);return correlationData;});log.info(当前时间{},发送一条时长{}毫秒TTL信息给队列C:{}, new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date()) , ttlTime, message);}
http://www.pierceye.com/news/865631/

相关文章:

  • 网站找谁做贵州网架公司
  • 做纸箱在什么网站找客户wordpress默认导航栏
  • wordpress采集自动伪原创福州360手机端seo
  • 工信部网站备案要求重庆网站公司设计
  • 宛城区建网站淘宝网页设计报告
  • 网站后台需求字节跳动员工人数2019
  • saas建站 cms科技感背景素材
  • 武进区城乡建设局网站在线员工后台网站建设
  • 关于网站开发人员的薪资易语言怎么做无限打开网站
  • 网站备案名称几个字企业网站定制案例
  • 新浪云服务器做网站重庆建设厅官方网站
  • 苏州市住房和城乡建设局官方网站郑州专业旅游网站建设
  • 网站免费正能量直接进入浏览器下载安装公开课网站建设
  • 个人做电影网站合法吗网页制作与网站建设完全学习手册下载
  • 椒江做网站wordpress的分类
  • 新手做网站应该注意什么重庆市建设工程造价信息网公众号
  • 网址输入奉化seo页面优化外包
  • 坪山商城网站建设哪家效益快教务管理系统是应用软件吗
  • 深圳网站搭建找谁怎么在手机上制作app
  • 做app和做网站的区别桂林市天气预报15天
  • 高端织梦html5网站模板 dedecms网络公司模板关键词排名优化方法
  • 上海网站建设咨找个网站2021能看到
  • 可以用服务器做网站查询公司信息
  • 个人可以备案企业网站吗旅行社网站 模板
  • 三丰云做网站步骤网站怎么上传ftp
  • 做二手车有哪些网站有哪些手续网站建设单位有哪些方面
  • 建设网站的和服务器常州免费网站制作
  • 电子外贸网站重庆有什么好玩的
  • 商务网站的建设阶段包括郑州的做网站公司哪家好
  • 深圳网站建设网络公司七星彩网投网站建设