rabbitmq集群部署
在了解了rabbitmq集群之后,来手动搭建一下rabbitmq的集群,这里以单机多节点为例,多机环境下基本上是一样的。
了解rabbitmq集群可查看 rabbitmq集群简介
集群安装环境:
- 系统:ubuntu 18.04
- 节点:3个节点,其中2个disc节点,1个ram节点
- 搭建HAProxy使集群高可用
A thousand miles begins with a single step .
在了解了rabbitmq集群之后,来手动搭建一下rabbitmq的集群,这里以单机多节点为例,多机环境下基本上是一样的。
了解rabbitmq集群可查看 rabbitmq集群简介
集群安装环境:
rabbitmq自带内建集群,其旨在rabbitmq的高可用,允许消费者和生产者在rabbitmq节点崩溃的情况下继续运行,以及通过添加更多节点的方式来线性扩展消息的吞吐量。但是即便是将消息、队列、交换器设置成可持久化,当集群中的一个节点挂掉后,该节点上队列中的消息也会消失,因为在默认情况下rabbitmq是不会将队列的内容复制到整个集群中(除非进行特别的设置:镜像队列)。
RabbitMQ是一个基于AMQP协议的轻量级,可靠,可扩展且可移植的消息代理。Spring的一个springAMQP项目将核心Spring概念应用于基于AMQP的消息传递解决方案的开发。SpringBoot则是将springAMQP包装了一层,提供了pring-boot-starter-amqp“Starter”来为通过RabbitMQ使用AMQP提供了便利。
rabbitmq的安装可参考《ubuntu下安装rabbitmq》
1 | <dependency> |
当springboot和dubbo走到了一起,那么如何让它两更快更容易的集成在一起呢?dubbo-spring-boot-starter帮助我们做到了这点,它实现了dubbo在springboot项目中自动配置(@EnableAutoConfiguration)。
dubbo-spring-boot-starter主要由以下部分内容组成:
在ubuntu18.04上安装mysql5.7后通过workbench连接和×mysql -u root -p 命令连接均无法连接。命令行显示如下错误:
1 | lazycece@cc-ubuntu:~$ mysql -u root -p |
在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。0.7版本增加了支持mysql数据源能力,所以只要使用0.7及以上版本的nacos,便可以配置mysql数据库,可视化的查看数据的存储情况了。
nacos支持配置多个数据库,通过 db.num 和 db.url.index的配置来控制。nacosz配置mysql数据库只需如下三点即可完成:
数据库安装可参考 ubuntu下安装mysql5.7
从github仓库下载nacos安装包,地址如下:
https://github.com/alibaba/nacos/releases
然后解压,这里nacos-server-0.9.0.tar.gz为例:
1 | tar -zxvf nacos-server-0.9.0.tar.gz |
自从有了spring-cloud-alibaba的开源之后,springcloud中使用nacos进行服务的注册与发现就已变得非常容易,只需要引入“spring-cloud-starter-alibaba-nacos-discovery”即可,然后开启@EnableDiscoveryClient,便可以做到无缝替换eureka和consul等注册中心。
下面通过给出一个简单的案例来演示springcloud中如何使用nacos。