该部署环境为CentOS7.5

(1)文件上传

准备linux系统下的nacos程序安装包,以版本nacos-server-1.1.4.tar.gz为例,上传文件至服务器。可通过用xftp工具直接将本地文件拖拽到服务器。

(2)文件解压

命令:tar -zxvf nacos-server-1.1.4.tar.gz 回车执行,直到程序执行完成。解压完成同级目录下生成




nginx读取env nginx读取nacos注册中心_nginx


文件夹。

(3)创建nacos配置库

1)进入nacos/conf目录,找到nacos-mysql.sql

2)登入mysql控制台

命令:mysql -uroot -p

3)创建nacos_config配置库

命令:create database nacos_config;

4)选择数据库

命令:use nacos_config;

5)导入数据

命令:source /文件所在路径/nacos/conf/nacos-mysql.sql

6)导入成功,可通过navicate工具查看导入,如下图


nginx读取env nginx读取nacos注册中心_nginx_02


(4)配置application.properties

1)进入nacos/conf目录下,编辑application.properties文件

命令:vi application.properties

2)在文件末尾输入nacos_config配置库信息

spring.datasource.platform=mysql

db.num=1

db.url.0=jdbc:mysql://ip:3306/nacos_config?characterEncoding=u

tf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=UTC

db.user=root

db.password=数据库密码

(5)配置cluster.conf

1)查询主机名

命令:hostname -I

2)进入nacos/conf目录下,编辑cluster.conf文件

根据实际情况配置nacos集群数量,这里按照三个nacos数量来配置。

命令:vi cluster.conf

输入以下内容,ip是根据1)中命令查询出来的ip,端口自行定义,这 里配置三条ip和端口代表配置三个nacos注册中心

ip1:port1

ip2:port2

ip3:port3


nginx读取env nginx读取nacos注册中心_linux启动nacos_03


(6)配置startup.sh文件

1)进入nacos/bin目录下,编辑startup.sh文件

命令:vi startup.sh

2)内容修改

找到如下图所示配置

在while同一行加上p:

下方加入如下两行

P)

PORT=$OPTARG;;


nginx读取env nginx读取nacos注册中心_nacos集群的ap cp切换_04


找到图中位置,加入-Dserver.port=${PORT}


nginx读取env nginx读取nacos注册中心_nacos集群的ap cp切换_05


(7)nginx文件配置

1)切换目录

命令:cd /usr/local/nginx/conf

2)编辑文件nginx.conf

命令:vi nginx.conf

分别加入以下内容

a)

upstream cluster{
 server 127.0.0.1:3333;
 server 127.0.0.1:4444;
 server 127.0.0.1:5555;
 }

b)

listen 1111;
server_name localhost;

c)

location / {
 #root html;
 #index index.html index.htm;
 proxy_pass http://cluster;
 }


nginx读取env nginx读取nacos注册中心_linux nacos启动_06


(8)nacos启动

进入nacos/bin目录下,依次启动端口为3333 4444 5555的nacos注册中心

命令:

sh startup.sh -p 3333

sh startup.sh -p 4444

sh startup.sh -p 5555


nginx读取env nginx读取nacos注册中心_nginx_07


(9)启动验证

命令:ps -ef|grep nacos|grep -v grep|wc -l

展示3代表成功启动三个nacos


nginx读取env nginx读取nacos注册中心_linux nacos启动_08


(10)ngxin启动

1)切换目录

命令:cd /usr/local/nginx/sbin

2)启动nginx

命令:./nginx -c /usr/local/nginx/conf/nginx.conf


nginx读取env nginx读取nacos注册中心_linux启动nacos_09


(11)访问测试

1)浏览器中分别输入访问地址

http://ip:333/nacos

http://ip:4444/nacos

http://ip:5555/nacos


nginx读取env nginx读取nacos注册中心_nacos集群的ap cp切换_10


2)输入默认登入账户nacos/nacos


nginx读取env nginx读取nacos注册中心_nacos集群的ap cp切换_11


3)到此完成nacos+nginx集群部署,此时所有微服务将被注册中心管理,多个注册中心通过nginx进行分流。

附:Java每日面试题

1.Mybatis是什么?

MyBatis 是一款优秀的持久层框架。

  • 支持自定义 SQL、存储过程以及高级映射
  • 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作
  • 通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录

2.阐述MyBatis优缺点

优点:

  • 消除 JDBC 中的重复代码
  • 可以在 XML 或注解中直接编写 SQL 语句,比较灵活,方便对 SQL 的优化与调整
  • SQL 写在 XML 中,与代码解耦,按照对应关系方便管理
  • XML 中提供了动态 SQL 的标签,方便根据条件拼接 SQL
  • 提供了 XML、注解与 Java 对象的映射机制
  • 与 Spring 集成比较方便

缺点:

  • 字段较多、关联表多时,编写 SQL 工作量较大
  • SQL 语句依赖了数据库特性,会导致程序的移植性较差,切换数据库困难