Linux环境下部署
依赖环境
该项目使用dubbo+zookeeper架构实现微服务,系统通知使用MQ实现,分布式缓存使用redis。
所依赖中间件包括:zookeeper, activemq, mysql,redis
推荐购买阿里云的主机,建议不低于以下配置:
| 操作系统 | CPU | 内存 | 带宽 | 其他 |
|---|---|---|---|---|
| Linux CentOS 7.X | 4核 | 8G | 5M | 公网IP,硬盘40G+ |
推荐的软件版本
| 软件 | 版本 | 说明 |
|---|---|---|
| JDK | 1.8 | spring boot 对低版jdk支持没有测过 |
| ActiveMQ | 5.15.6 | 其他版本也支持,记得开启延迟配置 |
| ZooKeeper | 3.4.6 | 高版本也可以 |
| MySQL | 5.7.X或8.0 | 为了增强性能及稳定性,建议使用RDS数据库 |
| Redis | 3.2.8 | 高版本也可以 |
以上软件的详细安装步骤,可参考:6.1 依赖软件安装
确保安装以上软件,正常启动:MySQL、ActiveMQ、ZooKeeper、Redis
注意:该架构是支持分布式集群部署的,如果对服务质量有更高的要求,建议部署集群环境
集群环境部署有任何问题可咨询技术支持售后服务客户。
项目打包
修改配置
修改 profiles/commons-prod-filter.properties文件内的配置,如数据库账号,redis, zookeeper地址, 文件存储位置等。 需要与待部署环境一致。
注意: DB账号为加密字段, 参考加解密工具类: [src/main/java/org/xxpay/service/common/util/DBPasswordUtil.java]
项目编译
进入xxpay4pro项目根目录下, 执行以下命令:
mvn package -Pprod出现以下提示,说明打包成功。
[INFO] Reactor Summary for xxpay4pro 3.1.0:
[INFO]
[INFO] xxpay-core ......................................... SUCCESS [ 4.579 s]
[INFO] xxpay-service ...................................... SUCCESS [ 1.672 s]
[INFO] xxpay-z-api-base ................................... SUCCESS [ 0.750 s]
[INFO] xxpay4pro .......................................... SUCCESS [ 5.555 s]
[INFO] xxpay-manage ....................................... SUCCESS [ 6.850 s]
[INFO] xxpay-merchant ..................................... SUCCESS [ 6.651 s]
[INFO] xxpay-agent ........................................ SUCCESS [ 4.907 s]
[INFO] xxpay-pay .......................................... SUCCESS [ 7.847 s]
[INFO] xxpay-task ......................................... SUCCESS [ 3.448 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 42.539 s
[INFO] Finished at: 2021-07-28T19:37:11+08:00
[INFO] ------------------------------------------------------------------------以上编译需安装maven和java环境。
在每个项目的 target 目录里找到以下文件:
| xxpay-pay-bin.tar.gz |
|---|
| xxpay-manage-bin.tar.gz |
| xxpay-agent-bin.tar.gz |
| xxpay-merchant-bin.tar.gz |
| xxpay-task-bin.tar.gz |
项目部署
执行SQL
在待部署环境的Mysql数据中执行初始化语句
init.sql必须执行,所有的表结构以及基本的初始化语句(有drop操作,生成环境谨慎执行)demo.sql选择执行,初始化一些测试数据,方便部署后测试系统功能channel.sql选择执行,初始化一些支付通道
确保以上SQL语句执行成功,再继续下面操作。
部署系统
创建用户
使用root用户登录,创建用户xxpay。登录xxpay用户,在/home/xxpay目录下创建service目录。
cd /home/xxpay
mkdir service拷贝项目
将【项目编译】 环节的五个 tar.gz文件 拷贝到: [ /home/xxpay/service ] 文件夹内, 并解压到当前目录下。
以xxpay-pay-bin为例:
tar -vxf xxpay-pay-bin.tar.gz启动项目
启动顺序: pay > task > manage > agent > merchant
启动脚本(以pay项目为例):
cd xxpay-pay/bin
./app.sh start项目查看
以公网IP:210.7.8.192为例,注意要提前开通端口:56700、56701、56702、56703、56705
账号:xxpaymgr
密码:111111abc
超密:666pay888
系统部署成功后,登录运营平台。
![/_images/m_7a2965b15e4fc03527b484942637362c_r.png "null")