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

地方门户网站如何宣传高清做爰片免费观看网站

地方门户网站如何宣传,高清做爰片免费观看网站,盐城有没有做网站吗,苏州免费发布信息网站#xff08;一#xff09;TTL 1.TTL概念 TTL又叫过期时间 RabbitMQ可以对队列和消息设置TTL#xff0c;当消息到达过期时间还没有被消费时就会自动删除 注#xff1a;这里我们说的对队列设置TTL,是对队列上的消息设置TTL并不是对队列本身#xff0c;不是说队列过期时间…一TTL 1.TTL概念 TTL又叫过期时间 RabbitMQ可以对队列和消息设置TTL当消息到达过期时间还没有被消费时就会自动删除 注这里我们说的对队列设置TTL,是对队列上的消息设置TTL并不是对队列本身不是说队列过期时间到了队列被删除而是消息到达此队列后会给他设定一个过期时间这个时间到了消息会删除不是队列删除如果同时此消息本身带有TTL过期时间按短的来 2.设置消息的TTL 那我们说可以对队列和消息设置TTL 那我们现在来先写对每条消息设置TTL(就是针对每一条消息设置消息的expiration参数单位是毫秒) 那我们来看生产者代码这里配置文件不需要去更改 RequestMapping(ttl)public String TTLPro(){String s1ttl test;Message messagenew Message(s1.getBytes(StandardCharsets.UTF_8));message.getMessageProperties().setExpiration(10000);RabbitTemplate.convertAndSend(Constants.TTL_EXCHANGE,ttl,message);return 发送成功;} 我们来看现象我这里设置过期时间为10s按理说到达队列后如果10s钟还没有被消费掉就会自动过期  10s后  如果我们不设置TTL就表示消息不会过期如果设置为0的化就表示除非此时可以直接将消息给消费者否者就会被丢弃 3.设置队列的TTL 设置队列的TTL是比较简单的但是注意我们队列如果存在的话我们是不可以直接改代码然后更改队列的配置信息的同时交换机也是这样如果我们想改可以再声明个队列或者把队列先删了再创建此时队列上的消息会丢失 设置队列过期时间只需要在队列上配置ttl属性就可以我这里设置了5s 此时我们队列的特性就又多了个TTL  然后我们继续向接口发送消息 5s后就变成了真的是5s 骗人是g 4.两者区别  设置队列TTL属性的方法一旦消息过期就会立即从队列中删除 设置消息TTL的方法一旦消息过期且不是队列中第一个消息消息并不会立即删除而是在要发送给消费者之前进行判定如果过期了再删 那我们就有疑问了这是为什么呢   本质上是为了提高性能因为设置队列的过期时间他们消息的最长存在时间就是队列的过期时间所有消息的存在时间都小于等于队列过期时间所以此时队列中已过期的元素大部分都在队列头部RabbitMQ只需要定期从队头开始扫描是否有过期消息即可 而设置消息TTL每条消息的过期时间都不同如果想要删除所有过期时间就需要扫描整个队列很影响性能所以不如等到用到了此消息再判定是否过期如果过期了再删除 二死信 1.死信概念 死信就是因为一些原因包括消息过期消息被拒绝接收队列达到最大长度无法被消费的消息。 那既然有这些无法被处理的信息那一定就有存储他们的队列有队列就要有交换机那么这个队列就叫做死信队列DLQ这个交换机就叫死信交换机DLX 本质上与正常的交换机和队列没什么区别 消息变成死信后会被发送到死信交换机然后由死信交换机绑定到死信队列中 2.代码演示 首先我们要声明一个死信队列和死信交换机进行绑定哪至于正常的队列我们就用刚刚的TTL为5的队列吧 Bean(ttlExchange)public Exchange ttlExchange(){return ExchangeBuilder.directExchange(Constants.TTL_EXCHANGE).durable(true).build();}Bean(ttlQueue)public Queue ttlQueue(){return QueueBuilder.durable(Constants.TTL_QUEUE).ttl(5000).deadLetterExchange(Constants.DEAD_EXCHANGE).deadLetterRoutingKey(dead).build();}Bean(ttlBind)public Binding ttlBind(Qualifier(ttlExchange) Exchange ackExchange,Qualifier(ttlQueue) Queue queue){return BindingBuilder.bind(queue).to(ackExchange).with(ttl).noargs();}Bean(deadExchange)public Exchange deadExchange(){return ExchangeBuilder.directExchange(Constants.DEAD_EXCHANGE).durable(true).build();}Bean(deadQueue)public Queue deadQueue(){return QueueBuilder.durable(Constants.DEAD_QUEUE).build();}Bean(deadBind)public Binding deadBind(Qualifier(deadExchange) Exchange ackExchange,Qualifier(deadQueue) Queue queue){return BindingBuilder.bind(queue).to(ackExchange).with(dead).noargs();} 然后我们发送消息等待5s看一下 然后我们看看刚才绑定死信交换机的那个队列特征  我们发现又多了两个特征 那验证完TTL过后我们来看消息被拒绝的情况 首先我们要把消息确认模式改成手动确认然后拒绝接收消息 RabbitListener(queues Constants.TTL_QUEUE)public void ListenerQueue2(Message message,Channel channel) throws IOException {long Tagmessage.getMessageProperties().getDeliveryTag();try {System.out.println(接收到消息: new String(message.getBody()) TagID: Tag);int num3/0; //模拟失败channel.basicAck(Tag,false);System.out.println(处理完成);}catch (Exception e){channel.basicReject(Tag,false);}} 然后我们调用接口看死信队列我们发现确实多了一条死信消息  那第三种产生死信的消息是队列满了那我们就需要更改一下我们队列  Bean(ttlQueue)public Queue ttlQueue(){return QueueBuilder.durable(Constants.TTL_QUEUE).ttl(5000).deadLetterExchange(Constants.DEAD_EXCHANGE).deadLetterRoutingKey(dead).maxLength(5l).build();} 此时我们注意我们要的是long类型如果传错了会给我们报错的 那我们再来看这个队列 我们发现又多了一个特征 我们到此已经给队列设置5个特征了我们来分别看一下 1D设置队列为持久化的 2TTL设置队列的过期时间 3Lim设置队列的最大长度 4DLX设置了死信交换机 5DLK设置了死信RoutingKey 3.死信面试题 死信概念死信来源死信场景 前两个我们都说过了这里主要说一下死信的应用场景 比如我们用户支付订单支付系统会给我们订单系统返回当前订单的支付状态 为了保障支付信息不丢失需要使用死信队列机制当消息消费异常时会放到死信队列中有可能存在用户支付但是消息没有被消费或者异常拒绝的情况此时我们放到死信队列中再对这个数据进行处理可能是人工确认 还有一些应用场景包括 消息丢弃直接丢弃这些无法处理的消息避免他们占用系统资源 日志收集将死信消息作为日志收集用于后续分析和定位
http://www.w-s-a.com/news/156128/

相关文章:

  • 网站移动排名做最好最全的命理网站
  • 网站怎么防黑客杭州市做外贸网站的公司
  • 网站推广公司认准乐云seo易语言做网站登录
  • 配色设计网站推荐网站下拉菜单重叠
  • 内容展示型网站特点在北京注册公司需要多少钱
  • h5网站源代码创意设计理念
  • 岳阳网站开发服务推广运营平台
  • 网站开发得多长时间湖南建设人力资源网证书查询
  • 论坛网站开发网络营销是什么时候产生的
  • 帮人做网站赚钱无忧软文网
  • 做网站要不要营业执照重庆网站优化seo公司
  • 学院宣传网站建设简介做网站没灵感
  • 网站建设终稿确认书网站意义学校
  • 3小时网站建设平台专业制作教学课件
  • 曲阜网站建设百度开户现货黄金什么网站可以做直播
  • 比较好的企业建站平台小程序开发外包该注意些什么
  • 建行官网官网网站吗二次元风格wordpress模板
  • 怎样开通自己的网站网址导航哪个主页最好
  • 大良o2o网站建设详情页设计说明怎么写
  • 您与此网站之间建立的连接不安全汽车cms系统是什么意思
  • 有没有做logo的网站企业网站的内容营销
  • 哈尔滨做企业网站怎么做网站自动响应
  • 网站建设硬件和软件技术环境配置签约做网站模板
  • 教育网站建设的素材手机app制作流程
  • 免费行情软件网站大全下载网站备案查询
  • flex网站模板wordpress实时预览
  • 建设银行网站模板为什么企业要建设自己的企业文化
  • 网站建设必知免费手机网站建站系统
  • ssh可以做wap网站么嘉兴seo排名
  • 站内优化包括哪些帝国做企业网站