Bez popisu

reghao 8580221ea3 account 和 user 不再依赖 log 模块 před 9 měsíci
account 8580221ea3 account 和 user 不再依赖 log 模块 před 9 měsíci
common 3075d4c7cf 1.springboot 版本升级到 2.6.15 před 11 měsíci
content 54012a7e39 update VideoPlayServiceImpl před 10 měsíci
data 02f26e2488 数据库, 缓存, 中间件地址由 192.168.0.210 修改为 192.168.0.209 před 10 měsíci
eureka 3522665585 eureka 不再依赖 log 模块 před 9 měsíci
file 22057cc730 使用 AccountQuery 接口提供的 userId 混淆方法 před 10 měsíci
gateway 7ae6da5217 1.gateway 不再依赖 log 模块 před 9 měsíci
log afd0a98406 使用 tnb1 项目 master 分支的 2478e4c4 commit 作为起点 před 1 rokem
message 02f26e2488 数据库, 缓存, 中间件地址由 192.168.0.210 修改为 192.168.0.209 před 10 měsíci
search 22c1ab7cd6 update search module před 10 měsíci
user 8580221ea3 account 和 user 不再依赖 log 模块 před 9 měsíci
zzz 40f04f2fca 添加 search 模块, 提供查询服务 před 10 měsíci
.gitignore afd0a98406 使用 tnb1 项目 master 分支的 2478e4c4 commit 作为起点 před 1 rokem
README.md 5babe59692 更新 search-service 配置, 现在可以正常启动 před 10 měsíci
pom.xml 40f04f2fca 添加 search 模块, 提供查询服务 před 10 měsíci

README.md

tnb

微服务实践, 本项目实现了一个类似 bilibili 的 VOD 系统后端

也包含 mall, exam, im, geo 等模块

前台应用包括 Web 应用和 Android 应用

分别由 tnbapp 项目和 tnbdroid 项目提供

依赖

  • os:Linux > Windows 系统理论上可以运行, 但尚未实践
  • jdk:11
  • maven:3.9
  • mysql:5.7
  • redis
  • rabbitmq
  • zookeeper:3.8.4
  • mongodb:4.4
  • elasticsearch:7.17.18

模块

tnb 项目模块:

  • eureka:6060
  • gateway:6000
  • account:6001
  • user:6002
  • message:6003
  • file:6004
  • content:6005
  • data:6006
  • search:6007

构建部署

pull 项目源码

cd ~/Downloads
git clone https://git.reghao.cn/reghao/tnb.git

初始化 MySQL

cd ~/Downloads/tnb/zzz
bash db_init.sh

执行 db_init.sh 会自动创建 tnb 项目需要的数据库并初始化数据库表

需要自行指定 db_init.sh 脚本中的 host, username, password 等变量值

构建并运行

cd ~/Downloads/tnb/zzz
bash build_jar.sh

执行 db_init.sh 会自动构建并运行 tnb 项目各应用 jar 包

build_jar.sh 脚本中的 proj_dir 变量默认是 ~/Downloads/tnb

mvn 构建默认使用 dev 环境, 所以需要修改每个应用 resources/application-dev.yml 配置文件中的第三方服务配置

默认运行的是 jar 包, 也可构建并运行 docker 镜像, 详见 build_jar.sh 脚本的 build_image 和 exec_image 函数

停止应用

cd ~/Downloads/tnb/zzz
bash shutdown.sh

执行 shutdown.sh 会结束 tnb 项目中的各个应用

其他依赖

若要正常使用 VOD 系统, 那么还需要运行 ossbnt 项目

其他

本项目模块太多, 构建部署都太过繁琐, 推荐使用 devops 项目来自动构建部署应用.