RabbIT

RabbitMq在CentOs7下的完整安装步骤,带你踩坑

流过昼夜 提交于 2020-05-04 01:57:13
1、前言 因为公司项目中用的RabbitMq来做消息处理,自己以前没有接触过,所以想自学一下。然额,光安装就花了6、7个小时才搞定,中间还换过一个版本,综合国内外博客才最终将所有安装中遇到的问题解决掉,最终将RabbitMq给运行起来,实属不易啊。说实话,学习一个新的技术,在安装软件时就受阻,对自信心和积极性的打击还是有点的,所以我把我的经历写下来,希望能对别人有帮助。另外,因为我要展示出错的过程,所以 建议读者如果参照我的步骤时,先不要急于安装,先读完我的文章,再回过头来整理下安装顺序、及在安装前先安装好依赖软件,然后再进行安装 ,否则,我踩过的坑你很可能也会再踩。 2、安装前的准备工作 2.1 下载erlang 下载地址: http://www.erlang.org/downloads/19.3 因为RabbitMq的运行依赖erlang,所以先下载erlang(erlang是什么可自行百度)。 erlang的版本会影响到rabbitmq的安装 ,两者有个版本对照,查看对照的地址: http://www.rabbitmq.com/which-erlang.html 2.2 下载rabbitmq 官网地址: http://www.rabbitmq.com/ 具体的安装包的3.7.5: https://github.com/rabbitmq/rabbitmq-server

octomap点云压缩

时间秒杀一切 提交于 2020-05-03 19:28:27
如果点云文件比较大,可以利用octomap库对点云进行压缩。 octomap以八叉树结构对点云进行组织,是一种有损压缩,定义不同的分辨率可以保存不同尺度的数据。 这里以 rabbit.pcd 文件为例,分别将点云保存为文本格式(.txt),二进制格式(.bin),八叉树格式(.ot),八叉树二进制模式(.bt),对比存为不同格式文件的大小。 程序运行需要安装pcl和octomap,示例如下: #include <iostream> #include <vector> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #include <octomap/octomap.h> #include <octomap/OcTree.h> using namespace std; class PointCloudInfo { public : typedef boost::shared_ptr <PointCloudInfo> Ptr; /* !< Point cloud information shared point */ typedef boost::shared_ptr < const PointCloudInfo> ConstPtr; /* !< Point cloud information shared point

OpenStack云计算之路-Mitaka 版本

二次信任 提交于 2020-05-02 19:09:18
1.1 云计算简介 云计算(英语: cloud computing ),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机各种终端和其他设备。 云计算是继 1980 年代大型计算机到客户端 - 服务器的大转变之后的又一种巨变。用户不再需要了解“云”中基础设施的细节,不必具有相应的专业知识,也无需直接进行控制。云计算描述了一种基于互联网的新的 IT 服务增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展而且经常是虚拟化的资源。 1.1.1 云计算的特点 互联网上的云计算服务特征和自然界的 云、水循环 具有一定的相似性,因此,云是一个相当贴切的比喻。根据技术研究院的定义如下。 云计算服务应该具备以下几条特征: 🥦 随需应变自助服务。 🥦 随时随地用任何网络设备访问。 🥦 多人共享资源池。 🥦 快速重新部署灵活度。 🥦 可被监控与量测的服务。 一般认为还有如下特征: 🍀 基于虚拟化技术快速部署资源或获得服务。 🍀 减少用户终端的处理负担。 🍀 降低了用户对于 IT 专业知识的依赖。 1.1.2 云计算服务模式 云计算定义中明确了三种服务模式: 图 - 服务模式详情 软件即服务( SaaS ): 即 Software-as-a-service ; 消费者使用应用程序,但并不掌控操作系统、硬件或运作的网络基础架构。是一种服务观念的基础,软件服务供应商

RabbitMQ消息队列怎样做到服务宕机或重启消息不丢失

自闭症网瘾萝莉.ら 提交于 2020-05-01 16:03:21
一、消息为什么丢失 RabbitMQ默认情况下的交换机和队列以及消息是非持久化的,也就是说在服务器重启或者宕机恢复后,之前创建的交换机和队列都将不复存在,之前未消费的消息也就消失不见了。原因在于每个队列和交换机的durable属性。该属性默认情况是false,它决定了RabbitMQ是否需要在崩溃或者重启之后重新创建队列(或者交换机)。 二、持久化交换机和队列 将交换机和队列的durable属性设置为true,这样你就不需要在服务器断电后重新创建队列和交换机了。你也许会认为把队列和交换机的durable属性设置为true就足够可以让消息幸免于重启后丢失了,真的是这样吗?队列和交换机当然必须被设置为true,但光这样做还不够。 能从AMQP服务器崩溃中恢复的消息,我们称之为持久化消息。在消息发布前,通过把它的“投递默认”( delivery mode)选项设置为2(AMQP客户端可能会使用人性化的常量来代替数值)来把消息标记成持久化。到目前为止,消息还只是被表示为持久化的,但是它还必须被发布到持久化的交换机中,并到达持久化的队列中才行。如果不是这样的话,则包含持久化消息的队列(或者交换机)会在Rabbit崩溃重启后不复存在,从而导致消息丢失。 三、持久化消息 因此, 如果消息想要从Rabbit崩溃中恢复,那么消息必须满足以下条件: 1. 把它的投递默认选项设置为持久化 2.

linux非root用户安装rabbitmq

元气小坏坏 提交于 2020-05-01 08:41:40
  因为rabbitmq是用erlang语言写的,所以装rabbitmq前第一步得先装erlang。   我们到erlang官网 https://www.erlang.org/downloads 下载安装包,最新版本是22.0,下载时又被windows禁掉了,退而求其次,下21.3版本吧:   下完后通过rz上传至wlf用户soft目录下,执行解压: $ tar xvf otp_src_21. 3 .tar   注意编译前需要借用root用户通过yum install命令先安装ncurses-devel和openssl-devel依赖,可以切换到root用户后执行: yum install ncurses- devel yum install openssl -devel   很遗憾,普通用户这里没法绕开root用户,除非你的机器之前已经用root安装过以上两个依赖了。通过以下命令可以查看本机是否已经存在这两个依赖: $ rpm -qa | grep -E " ncurses-devel*|openssl-devel* " ncurses -devel- 5.9 - 13.20130511 .el7.x86_64 openssl -devel- 1.0 . 1e-60 .el7.x86_64   可以发现我这里之前已经装了。   配置下目录前缀,通过make命令开始编译、安装

RabbitMq 发送消息时,同时接受返回数据

佐手、 提交于 2020-04-30 23:13:55
生产者代码,注意要设在将返回数据放入的队列; 通过这种方式可以实现同步阻塞,从而得到返回数据 package com.boot.springbootnew.component; import com.alibaba.fastjson.JSON; import com.boot.springbootnew.config.ReturnComponent; import com.boot.springbootnew.pojo.MqFailLog; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.amqp.core.Message; import org.springframework.amqp.core.MessageProperties; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.support.CorrelationData; import org.springframework.beans.factory.annotation.Autowired; import org.springframework

Ubuntu16.04 安装RabbitMQ

China☆狼群 提交于 2020-04-27 21:50:14
转载 https://www.cnblogs.com/hongdada/p/7203589.html 安装RabbitMQ 由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erlang,执行命令: sudo apt-get install erlang-nox 安装rabbitMq命令: 2.$ sudo apt- get update 3.$ sudo apt-get install rabbitmq-server 启动、停止、重启、状态rabbitMq命令: 启动:sudo rabbitmq- server start 关闭: sudo rabbitmq- server stop 重启: sudo rabbitmq- server restart 查看状态:sudo rabbitmqctl status 安装好了以后可以使用 ps -ef|grep rabbit查看RabbitMQ的情况 hongdada@ubuntu:~$ ps -ef| grep rabbit rabbitmq 7991 1 0 00:12 ? 00:00:00 /bin/sh /usr/sbin/rabbitmq- server rabbitmq 7999 7991 0 00:12 ? 00:00:00 /bin/sh -e /usr/lib/rabbitmq/bin

Docker环境下的前后端分离项目部署与运维(八)使用Docker部署RabbitMQ集群

删除回忆录丶 提交于 2020-04-27 21:48:57
下载RabbitMQ镜像 镜像地址 RabbitMQ Docker官方认证镜像地址: https://hub.docker.com/_/rabbitmq 安装命令 安装之前,切记把Docker Hub设置为阿里云的加速,方便安装。 docker pull rabbitmq: 3.7 . 14 -management 注意使用后缀为"-management"的镜像版本,是包含网页控制台的。 查看安装 使用命令:docker images查看下载的镜像,如下图所示: 启动RabbitMQ docker run -d --hostname localhost --name myrabbit -p 15672 : 15672 -p 5672 : 5672 rabbitmq: 3.7 . 14 -management 参数说明: - d 后台进程运行 --hostname RabbitMQ主机名称 --name 容器名称 - p port:port 本地端口:容器端口 -p 15672 : 15672 http访问端口 -p 5672 : 5672 amqp访问端口 启动完成之后,使用:docker ps 查看程序运行情况。 使用:http://宿主ip:15672 访问,用户名密码使用默认:guest/guest. 启动多个RabbitMQ docker run -d --hostname

RabbitMQ-----的基本安装

醉酒当歌 提交于 2020-04-27 21:48:16
RabbitMQ的基本安装 一 docker下安装RabbitMQ 首先使用 docker search rabbitmq命令查找docker仓库是否存在rabbitmq镜像,可以发现docker仓库是存在rabbitmq的 1 [root@admin ~ ]# docker search rabbitmq 2 NAME DESCRIPTION STARS OFFICIAL AUTOMATED 3 rabbitmq RabbitMQ is an open source multi-protocol me… 2809 [OK] 4 bitnami/rabbitmq Bitnami Docker Image for RabbitMQ 35 [OK] 5 tutum/rabbitmq Base docker image to run a RabbitMQ server 20 6 kbudde/rabbitmq-exporter rabbitmq_exporter for prometheus 12 [OK] 7 frodenas/rabbitmq A Docker Image for RabbitMQ 12 [OK] 8 cyrilix/rabbitmq-mqtt RabbitMQ MQTT Adapter 7 [OK] 9 arm32v7/rabbitmq RabbitMQ is an

Linux系统 Docker RabbitMQ容器集群部署

冷暖自知 提交于 2020-04-27 21:47:59
rabbitmq容器集群部署 步骤一:安装配置docker服务下载rabbit服务 # yum -y install git docker    安装git docker 服务 # systemctl start docker    启动docker服务 # systemctl enable docker   docker服务开机自动开启 # docker search rabbitmq:management 搜索rabbitmq容器镜像 # docker pull rabbitmq:3.6.15-management # docker run -d --hostname rabbit1 --name rabbit1 -p 15672:15672 -p 5672:5672 --restart always -v /opt/data/rabbitmq/:/var/lib/rabbitmq -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:3.6.15-management # docker run -d --hostname rabbit2 --name rabbit2 --link rabbit1:rabbit1 -p 5673:5672 --restart always -v /opt/data/rabbitmq/:/var