在软件开发中,数据库的引入是必不可少的,其中又属mysql使用最为广泛,而在springboot中,集成使用mysql的方式有很多(例如jpa),这里来展现一下通过mybatis框架在springboot中使用mysql。
rabbitmq高可用集群部署
rabbitmq集群部署
在了解了rabbitmq集群之后,来手动搭建一下rabbitmq的集群,这里以单机多节点为例,多机环境下基本上是一样的。
了解rabbitmq集群可查看 rabbitmq集群简介
集群安装环境:
- 系统:ubuntu 18.04
- 节点:3个节点,其中2个disc节点,1个ram节点
- 搭建HAProxy使集群高可用
rabbitmq集群简介
rabbitmq自带内建集群,其旨在rabbitmq的高可用,允许消费者和生产者在rabbitmq节点崩溃的情况下继续运行,以及通过添加更多节点的方式来线性扩展消息的吞吐量。但是即便是将消息、队列、交换器设置成可持久化,当集群中的一个节点挂掉后,该节点上队列中的消息也会消失,因为在默认情况下rabbitmq是不会将队列的内容复制到整个集群中(除非进行特别的设置:镜像队列)。
springboot中rabbitmq的集成与使用
RabbitMQ是一个基于AMQP协议的轻量级,可靠,可扩展且可移植的消息代理。Spring的一个springAMQP项目将核心Spring概念应用于基于AMQP的消息传递解决方案的开发。SpringBoot则是将springAMQP包装了一层,提供了pring-boot-starter-amqp“Starter”来为通过RabbitMQ使用AMQP提供了便利。
rabbitmq的安装可参考《ubuntu下安装rabbitmq》
springboot集成rabbitmq
引入依赖
1 | <dependency> |
springboot快速集成dubbo
当springboot和dubbo走到了一起,那么如何让它两更快更容易的集成在一起呢?dubbo-spring-boot-starter帮助我们做到了这点,它实现了dubbo在springboot项目中自动配置(@EnableAutoConfiguration)。
dubbo-spring-boot-starter模块
dubbo-spring-boot-starter主要由以下部分内容组成:
- dubbo-spring-boot-parent 模块主要管理 Dubbo Spring Boot 工程的 Maven 依赖;
- dubbo-spring-boot-autoconfigure 模块提供 Spring Boot’s @EnableAutoConfiguration 的实现 - DubboAutoConfiguration, 它简化了 Dubbo 核心组件的装配;
- dubbo-spring-boot-actuator 提供 Production-Ready 特性:健康检查、控制断点、外部化配置等;
ubuntu下mysql5.7安装后无法远程登录问题
在ubuntu18.04上安装mysql5.7后通过workbench连接和×mysql -u root -p 命令连接均无法连接。命令行显示如下错误:
1 | lazycece@cc-ubuntu:~$ mysql -u root -p |
ubuntu下安装mysql5.7
Nacos配置mysql数据库
在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。0.7版本增加了支持mysql数据源能力,所以只要使用0.7及以上版本的nacos,便可以配置mysql数据库,可视化的查看数据的存储情况了。
nacos配置mysql
nacos支持配置多个数据库,通过 db.num 和 db.url.index的配置来控制。nacosz配置mysql数据库只需如下三点即可完成:
数据库安装可参考 ubuntu下安装mysql5.7
- 安装数据库,且确保版本5.6.5+
- 使用 conf/nacos-mysql.sql 文件初始化数据库
- 修改conf/application.properties文件增加mysql支持
ubuntu下nacos单机部署安装
从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 |