了解Spring Cloud微服务以及微服务搭建(Nacos)

一、微服务的简介

  • 微服务是可以独立部署、水平扩展、独立访问的服务单元。Java 中常见最小的微服务单元就是基于 SpringBoot 框架的一个独立项目。一个微服务只做一件事(单一职责),多个微服务组合才能称之为一个完整的项目或产品。那么多个微服务的就需要来管理,而 SpringCloud 就是统筹这些微服务的大管家。它是一系列有序框架的集合,简单易懂、易部署易维护的分布式系统开发工具包。

  • 今天介绍的开源项目就是基于 SpringCloud2.1 的脚手架,让项目开发快速进入业务开发,而不需过多时间花费在架构搭建上,下面就让我们一起来看看这个项目的使用吧。

二、项目结构

  • 这里以一个网关(gateway-admin)微服务来说明。

  • 项目目录结构如下图:

  • 目录说明:

  • db:项目初始化数据库脚本。

  • docker:Docker 配置文件目录,将微服务打包为 docker 镜像(image)。

  • config:项目配置信息目录,包括数据库配置,消息转化配置等。

  • dao:数据库操作目录,主要对底层数据进行增删查改。

  • entity:项目实体类目录。

  • events:事件处理目录。

  • exception:异常处理目录,通过面向切面处理全局异常。

  • rest:微服务控制器目录,也就是对外提供的接口。

  • service:微服务业务层目录。

  • GatewayAdminApplication:微服务 SpringBoot 入口类。

  • resources:项目配置文件目录。

  • test:项目单元测试目录。

  • pom.xml:maven 项目对象模型文件。

三、实战操作

3.1 前提

确保本地安装 Git、Java8、Maven。
懂一些 SpringMVC 的知识,因为 SpringBoot 是基于 SpringMVC 演化而来的。
懂一些应用容器引擎 Docker、Docker-compose 的知识。

3.2 微服务架构说明

一个完整的项目,微服务架构一般包括下面这些服务:

  • 注册中心(常用的框架 Nacos、Eureka)
  • 统一网关(常用的框架 Gateway、Zuul)
  • 认证中心(常用技术实现方案 Jwt、OAuth)
  • 分布式事务(常用的框架 Txlcn、Seata)
  • 文件服务
  • 业务服务

3.3 运行项目

  • 下面介绍了三种运行的方式:

  • 第一种:一键运行
    Linux 和 Mac 系统下可在项目根目录下执行 ./install.sh 快速搭建开发环境。

  • 第二种:本地环境运行
    不推荐此方法,但还是简单介绍下。

  • 1.基础环境安装:mysql、redis,rabbitmq

  • 2.环境运行:

git clone https://github.com/zhoutaoo/SpringCloud.git #克隆项目
  • 3.安装认证公共包到本地 maven 仓库,执行如下命令:
cd common
mvn clean install #安装认证公共包到本地 maven 仓库
  • 4.安装注册中心 Nacos

  • 下载 Nacos

  • 执行如下命令

unzip nacos-server-0.9.0.zip  OR tar 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值