本文收录在个人博客:www.chengxy-nds.top,共享技术资源,共同进步前一段有幸参与到一个智能家居项目的开发,由于之前都没有过这方面的开发经验,所以对智能硬件的开发模式和技术栈都颇为好奇。产品是一款可燃气体报警器,如果家中燃气泄露浓度到达一定阈值,报警器检测到并上传气体浓度值给后台,后台以电话、短信、微信等方式,提醒用户家中可能有气体泄漏。用户还可能向报警器发一些关闭报警、调整音量的指
分类:
编程语言 时间:
2020-06-22 09:20:38
阅读次数:
56
人一辈子最值得炫耀的不应该是你的财富有多少(虽然这话说得有点违心,呵呵),而是你的学习能力。技术更新迭代的速度非常快,那作为程序员,我们就应该拥有一颗拥抱变化的心,积极地跟进。 在 RabbitMQ 入门之前,我已经入门了 Redis、Elasticsearch 和 MongoDB,这让我感觉自己富 ...
分类:
其他好文 时间:
2020-06-21 23:41:49
阅读次数:
174
对于消息组件,如果按照最初的设计来讲,性能最高得就是RabbitMQ,因为RabbitMQ设计比较完整,而Kafka不同,Kafka最初的设计最大的坑:没有安全认证,所以最初的一些系统设计的时候为了考虑到安全性,所以采用了性能较差的ssl认证方式来进行出来,也就是说使用证书的方式来处理认证操作。 如 ...
分类:
其他好文 时间:
2020-06-21 23:22:34
阅读次数:
81
1、mq的应用场景: 1) 对于数据量大或者处理耗时长的操作,我们可以引入 MQ 实现异步通信,减少客户端的等待,提升响应速度。 2) 对于改动影响大的系统之间,可以引入 MQ 实现解耦,减少系统之间的直接依赖。 3) 对于会出现瞬间的流量峰值的系统,我们可以引入 MQ 实现流量削峰,达到保护应用和 ...
分类:
其他好文 时间:
2020-06-21 20:26:08
阅读次数:
103
导入pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan ...
分类:
编程语言 时间:
2020-06-21 19:55:14
阅读次数:
51
本文收录在个人博客:www.chengxy-nds.top,共享技术资源,共同进步 前一段有幸参与到一个智能家居项目的开发,由于之前都没有过这方面的开发经验,所以对智能硬件的开发模式和技术栈都颇为好奇。 产品是一款可燃气体报警器,如果家中燃气泄露浓度到达一定阈值,报警器检测到并上传气体浓度值给后台, ...
分类:
编程语言 时间:
2020-06-21 12:16:32
阅读次数:
180
前言:实际项目中经常遇到消息消费失败了,要进行消息的重发。比如支付消息消费失败后,要分不同时间段进行N次的消息重发提醒。 本文模拟场景 当金额少于100时,消息消费成功 当金额大于100,小于200时,会进行3次重发,第一次1秒;第二次2秒;第三次3秒。 当金额大于200时,消息消费失败,会进行5次 ...
分类:
编程语言 时间:
2020-06-21 11:29:13
阅读次数:
40
RabbitMQ分布式部署有3种方式:集群、Federation和Shovel。这三种方式并不是互斥的,可以根据需求选择相互组合来达到目的,后两者都是以插件的形式进行设计,复杂性相对高,此篇只聊一下RabbitMQ自带的内建集群。 ? 我们把部署RabbitMQ的机器称为节点,也就是broker。b ...
分类:
其他好文 时间:
2020-06-21 00:32:47
阅读次数:
96
第一步 :安装erlang1.因为RabbitMQ是Erlang编写,安装时,需要先安装Erlang。 下载地址:https://www.erlang.org/downloads 双击安装程序,一直点击next 就行. 2.配置Erlang环境变量 变量名:ERLANG_HOME 变量值就是刚才er ...
了解一些 RabbitMQ 的实现原理也是很有必要的,它可以让你在遇到问题时能透过现象看本质。比如一个队列的内部存 储其实是由5个子队列来流转运作的,队列中的消息可以有4种不同的状态等,通过这些可以明白在使用 RabbitMQ 时尽量不要有过多的消息堆积,不然会影响整体服务的性能。 ? 存储机制 R ...
分类:
其他好文 时间:
2020-06-21 00:03:39
阅读次数:
103