JH1️⃣入门②部署单体应用、微服务

  • 单体应用:Monolithic
  • 微服务应用:MicroService
  • 微服务网关:Gateway

1、单体应用

1.1、创建单体应用

创建一个用于生产 Monolithic 应用 的目录,切换到该目录

示例

  • 不使用响应式,JWT 身份验证类型

  • MySQL 数据库、不使用缓存

  • Maven 构建,不使用 JHipster Registry 和其它技术

  • 前端:Vue 框架,生成 admin UI,默认 Bootswatch 主题、国际化(中英,注意空格选中)

  • 不需要其它测试框架,不需要其它生成器

    image-20220511114032057

目录结构
image-20220511111755430

1.2、数据库配置

  1. 为应用程序创建数据库

    • 可使用本地/远程数据库(相对于使用 JHipster 的服务器而言)

    • 可视化工具(如 Navicat)或命令行。

      CREATE DATABASE mono_test;
      
  2. 修改配置文件:可视化工具(Xftp)或命令行方式

    • 找到项目配置文件:项目文件夹\src\main\resources\config\

      image-20220511112139662

    • 修改配置dataSource 的 URL、用户名、密码

      image-20220511155214798

    • 保存,确认配置成功修改(可在 Linux 中通过 cat 命令查看)

1.3、运行

初次启动 Maven 需要下载依赖,等待完成即可。

  1. 进入 JHipster 生成的应用程序目录

  2. 基于 Maven 构建的项目,输入 ./mvnw 启动。

    cd /tmp/jhipster/myapplication
    ./mvnw
    
  3. 运行成功

    image-20220511114812102

  4. 访问项目

    • 服务器 IP 地址:云服务器公网 IP、虚拟机静态 IP
    • 默认端口号:8080
      image-20220511115632393

2、微服务(❗)

组件说明

  • 注册中心:运行时配置、监控、扩展应用程序
  • 微服务应用
  • 微服务网关:处理 Web 流量,为前端应用提供服务

2.1、注册中心

Registry Center

  • Eureka 服务:服务发现
  • Spring Cloud 配置服务:运行时提供配置
  • 管理服务器:监控、管理

2.1.1、安装方式

基于 Registry Center 创建微服务应用和网关,因此需要先安装注册中心。

有以下 4 种安装方式

  • Spring 配置文件
  • 解压 jar 包
  • GitHub 克隆
  • Docker 镜像

2.1.2、安装

GitHub 克隆方式为例,安装 Registry Center

  1. 创建应用程序目录,用于生产微服务应用

    mkdir -p /tmp/jhipster/mymicro
    cd /tmp/jhipster/mymicro
    
  2. 将 GitHub 项目克隆到当前目录

    git clone https://github.com/jhipster/jhipster-registry
    
  3. 完成安装:默认端口号 8761

    image-20220511132555648

2.2、微服务应用

2.2.1、创建

创建一个用于生产 Microservice 应用 的目录(与 Registry Center 同个父目录下)

切换到该目录,启动 JHipster。

mkdir /tmp/jhipster/mymicro/myapplication
cd /tmp/jhipster/mymicro/myapplication
jhipster

具体选项参考本文 【1.3.3、2.1】。

  • 端口号(避免端口冲突)

  • 服务发现服务:JHipster Registry

    image-20220511133856474

2.2.2、数据库配置

与单体应用的配置相同,参考本文【2.2】

  1. 为应用程序创建数据库

    • 可使用本地/远程数据库(相对于使用 JHipster 的服务器而言)

    • 可视化工具(如 Navicat)或命令行。

      CREATE DATABASE micro_test;
      
  2. 修改配置文件:可视化工具(Xftp)或命令行方式

    • 找到项目配置文件:项目文件夹\src\main\resources\config\

      image-20220511141703541

    • 修改配置: dataSource 的 URL、用户名、密码

      image-20220511160125134

    • 保存,确认配置成功修改(可在 Linux 中通过 cat 命令查看)

2.3、微服务网关

2.3.1、创建网关应用

创建一个用于生产 Gateway application 的目录(与 Registry Center 同个父目录下)

切换到该目录,启动 JHipster。

mkdir /tmp/jhipster/mymicro/gateway
cd /tmp/jhipster/mymicro/gateway
jhipster

具体选项参考本文 【1.3.3、2.1】

  • 端口号(避免端口冲突)

  • 服务发现服务:JHipster Registry

    image-20220511143118224

2.3.2、数据库配置

Microservice application 使用同个数据库,配置有所不同。

修改配置文件:可视化工具(Xftp)或命令行方式

  • 找到项目配置文件:项目文件夹\src\main\resources\config\

    image-20220511141703541

  • 修改配置

    • liquibase 的 URL

    • r2dbc 的 URL、用户名、密码

      image-20220511160540340

  • 保存,确认配置成功修改(可在 Linux 中通过 cat 命令查看)

2.4、运行

  • 步骤:启动注册中心(8761)→ 启动应用(8081) → 启动网关(8081)

  • 方式:通过 screen 分别开启 3 个会话,以便管理。

    # 列出所有会话
    screen -ls
    # 新建会话
    screen -S 会话名
    # 删除会话
    screen -S 会话名 -X quit
    # 退出会话(挂起):快捷键 Ctrl+A+D
    screen -d 会话名
    # 回到会话
    screen -r 会话名
    

2.4.1、启动注册中心

初次启动 Maven 需要下载依赖,等待完成即可。

  1. 创建一个会话:用于启动注册中心,创建后自动进入会话。

    screen -S jh-registry
    
  2. 切换到 Registry center 所在目录,执行 ./mvnw 启动项目。

    cd /tmp/jhipster/mymicro/jhipster-registry
    ./mvnw
    
  3. 启动成功,输出 URL 信息

    image-20220511151318747

  4. 访问 Registry:登录后可见已注册 1 个实例。

    • 服务器 IP 地址:云服务器公网 IP、虚拟机静态 IP)

    • 默认端口号:8761

    • 默认账号密码:admin

      image-20220511151811955

  5. 挂起当前会话

    # 快捷键 Ctrl+A+D
    screen -d jh-registry
    

2.4.2、启动微服务项目

初次启动 Maven 需要下载依赖,等待完成即可。

  1. 创建一个会话:用于启动微服务项目,创建后自动进入会话

    screen -S jh-micro
    
  2. 切换到微服务应用所在目录,执行 ./mvnw 启动项目。

    cd /tmp/jhipster/mymicro/myapplication
    ./mvnw
    
  3. 启动成功,输出 URL 信息

    image-20220511152542795

  4. 访问微服务项目

    • 服务器 IP 地址:云服务器公网 IP、虚拟机静态 IP

    • 端口号:8081

      image-20220511152717936

  5. 挂起当前会话

    # 快捷键 Ctrl+A+D
    screen -d jh-micro
    

查看 Registry,可见已注册 2 个实例。

image-20220511153153486

2.4.3、启动网关

初次启动 Maven 需要下载依赖,等待完成即可。

  1. 创建一个会话:用于启动网关,创建后自动进入会话。

    screen -S jh-gateway
    
  2. 切换到网关应用所在目录,执行 ./mvnw 启动项目。

    cd /tmp/jhipster/mymicro/gateway
    ./mvnw
    
  3. 启动成功,输出 URL 信息

    image-20220511153709110

  4. 访问网关

    • 服务器 IP 地址:云服务器公网 IP、虚拟机静态 IP

    • 端口号:8080

      image-20220511153800435

  5. 挂起当前会话

    # 快捷键 Ctrl+A+D
    screen -d jh-gateway
    

查看 Registry,可见已注册 3 个实例。

image-20220511153822759

posted @ 2022-05-11 16:43  Jaywee  阅读(118)  评论(0编辑  收藏  举报

👇