后端运行

本章节旨在使后台开发人员在本地快速构建起来开发环境

本机开发环境

so-fast-pl-cloud基于Springboot+SpringCloud&Alibaba构建,数据库基于MySql(后续会丰富数据源),并使用Maven管理工程。开发环境所需软件清单如下:

软件 版本 是否必须 备注
JAVA 8 必须
Maven >=3.6.3 必须 推荐配置阿里源。
Redis stable 必须 推荐构建在服务器上,Windows平台版本稳定性较差。服务器安装Redis一定要开启认证。
MySql 5.7 必须
Nacos 1.4.2 必须 推荐使用sofast提供的加固版本,不要使用2.0以上版本
IDE IntelliJ IDEA 可选 推荐使用IDEA。依据个人喜好选择。
RabbitMQ stable 可选 使用工作流和通知功能时才需要安装。
Seata 1.4.2 可选 使用工作流和分布式事务场景时才需要安装。

环境验证

> java -version
Java version: 1.8.xxx

> mvn -v
Apache Maven 3.6.3 ...

Maven配置

在本地maven配置文件中settings.xml中servers节点添加如下私服认证信息配置:


<server>
  <id>sofast-proxy</id>
  <username>ntt-read</username>
  <password>(Nttdata)</password>
</server>

mirrors 节点中追加阿里云maven仓库代理,提升下载速度

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  </mirror>

代码获取

2.x版本GIT地址:http://101.133.164.217:8099/so_fast_group/so-fast-pl-cloud.git

如有问题请联系国内开发技术委员会。

工程导入

打开IDE,选择【Open】或者【Import】选项,从文件导航中选择so-fast-pl-cloud工程进行导入,初次导入时间略长。

导入好工程后,可使用IDE的maven视窗进行生命周期操作,如【clean/package】等,也可使用命令行:mvn clean package进行编译打包。

⚠️ 确保在IDE中已经配置好了Maven,配置方法请网上查询

数据脚本导入

so-fast-pl-cloud中提供了开箱即用的内置微服务,因此需要将以下数据库脚本导入到mysql server中。 导入数据库脚本前,请按照脚本名称创建对应的Schema。

so-fast-pl-cloud
|---------db
    |----sf-cms.sql                  // so-fast-cmd服务所需DB
    |----sf-external-api.sql         // so-fast-external-api服务所需DB
    |----sf-flowable.sql             // so-fast-workflow服务所需DB
    |----sf-job.sql                  // so-fast-task服务所需DB
    |----sf-log.sql                  // so-fast-log服务所需DB
    |----sf-nacos.sql                // nacos server所需DB
    |----sf-seata.sql                // seata server所需DB
    |----sf-system.sql               // so-fast-system服务所需DB
    |----sf-tenant.sql               // so-fast-tenant服务所需DB(仅多租户Schema隔离场景需要)
    |----sf-upms.sql                 // so-fast-upms服务所需DB
    |----sf_all_dababase.sql         // 除NACOS,SEATA,JOB外全部建库建表SQL

数据库脚本对应各个服务,可根据具体使用的服务情况定制化导入脚本;初期学习时,建议导入全部。

配置文件修改

在SOFAST中统一使用.yml后缀的配置文件,SOFAST中有两种命名的配置文件:

  • bootstrap.yml 存放于各微服务工程的resources目录下,仅用于配置优先级较高的系统环境配置项(如注册中心地址等)
  • application-*.yml 存放于Nacos Server中,由nacos配置中心统一管理。

    配置文件加载顺序:bootstrap.yml > application-*.yml

bootstrap.yml配置微服务端口、Nacos server信息及swagger的包扫描路径。 其他所有配置都使用application-*.yml进行配置(application可以替换为具体的微服务名称)。

SOFAST内置三个环境变量:dev(开发环境)、test(测试环境)、prod(生产环境),不同环境分别对应一套配置文件,并基于Nacos动态配置中心进行管理。

对于配置文件分类,命名,加载等有疑问,可查阅springboot官方文档进行了解。

Nacos Server启动OK后,通过 http://localhost:8848/nacos 登录并进入配置列表,修改各微服务配置文件的以下配置信息【redis、mysql】

Nacos Server请参考 https://nacos.io/zh-cn/docs/quick-start.html

修改各微服务数据库信息,数据库一般采用一服务一库方式,因此找到各个微服务的配置文件。

如:日志服务的开发环境配置【so-fast-log-dev.yml】,找到以下片段进行修改。

      datasource:
        # 主库数据源
        master:
          url: jdbc:mysql://xxxx:3306/sf-log?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
          username: root
          password: 123456

修改Redis配置,Redis大多场景采用共享方式,因此在【application-dev.yml】,找到以下片段进行修改。

redis:
  # 地址
  host:  ${your_redis_host}
  port:  ${your_redis_port}
  # 密码
  password:  ${your_redis_password}

工程启动

1、首先启动Nacos Server

Nacos Server请参考 https://nacos.io/zh-cn/docs/quick-start.html

修改nacos的配置文件:启用mysql 持久化并配置mysql连接

### Count of DB:
 db.num=1
### Connect URL of DB:
 db.url.0=jdbc:mysql://127.0.0.1:3306/sf-nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

 db.user=mysql-user
 db.password=mysql-password

通过以下命令启动nacos

### linux
sh startup.sh -m standalone

### windows
startup.cmd -m standalone

启动成功后,通过http://localhost:8848/nacos 进行访问。

启动后的nacos中已经包含了默认的配置文件,如果需要恢复或导入最新的配置文件,可将以下目录中的配置进行导入

so-fast-pl-cloud
    |---nacos
          |---nacos_config_export_20220114092748.zip

nacos

2、通过Intellij IDE启动工程。启动过程中如出现问题请联系国内开发技术委员会。

通过 IDE启动时,需要指定profile变量,在Run/Debug Configurations中配置Active Profilesdevtest

3、也可通过一键启动脚本启动(仅适用Linux和MacOS的Shell环境)

so-fast-pl-cloud
    |-----deploy
                    |------start.sh
                    |------stop.sh

请注意:脚本中仅启动了常规服务,对于工作流、分布式事务等相关并不涉及,可自行本地修改脚本,添加所需启动服务。

确认

工程正常启动后,其通过以下方式确认其正常启动。

一、访问nacos页面,能够正常看到所有已经注册的微服务。

​ URL:http://localhost:8848/nacos

​ 默认用户密码:nacos/nacos

如果使用SOFAST提供的安全加固版本,用户密码为:nacos/so-fast(Nttdata)

二、通过Admin监控各服务健康状况。

​ URL:http://localhost:9101/ops-admin

​ 用户密码:sofast/111111

常见问题

1、so-fast-mpg工程的依赖包无法下载,maven依赖报错等。

原因1:so-fast-mpg工程需要依赖maven私服jar包,私服地址在父pom.xml中已经配置http://101.133.164.217:8091/repository/maven-public/,并且可以正常访问。

原因2:查看settings.xml文件中是否配置了私服认证信息


  <servers>

    <server>
      <id>sofast-proxy</id>
      <username>ntt-read</username>
      <password>(Nttdata)</password>
    </server>

  </servers>
Copyright © 2022. 恩梯梯数据(中国)信息技术有限公司. all right reserved,powered by Gitbook该文件修订时间: 2023-12-19 13:33:38

results matching ""

    No results matching ""