Skip to content

xcfstudio/woodfish-server

Repository files navigation

木鱼功德网 服务端 [KOA2][MySQL][Redis]

zzCq7d.png

关联前端项目

前言

本项目是作者的创作型实验项目,旨在打造干净、清爽的小而美的应用。本项目主要功能是积分制敲木鱼,并进行排行,多用户在线敲木鱼功德系统, 基于Koa2开发。数据使用MySQL存储,Redis做缓存,提高性能。

注: windows用户必须在gitbash中运行脚本, 不然会出错。如无法正常执行脚本, 请自行阅读脚本, 根据脚本内容手动操作。

启动项目

安装依赖

# npm
npm install

# yarn
yarn install

配置数据库

  1. 搭建redis、mysql环境: 可通过docker搭建,也可直接安装
  2. 修改项目配置文件: 配置文件位于项目根目录/config, 修改mySQL.tsredis.ts, 使其符合当前环境
  3. 创建数据库: 手动建立名称为woodfish的数据库。SQL语句示例: CREATE SCHEMA 'woodfish' ;

调试项目

生成密钥:

执行脚本文件:

sh ./secretKey/genSecretKey.sh

或拷贝已有的密钥至此文件夹, 根据脚本内的文件名进行命名。

启动调试:

  npm run dev

开发模式, 基于nodemon, 文件发生改动自动重启服务。配置文件在项目根目录/nodemon.json

同步模型:

GET请求/api/system/syncmodels, 数秒后完成模型同步。此接口只能访问一次便锁定, 若需再次同步,需删除项目根目录/tag/db.lock

编译

npm run build

编译结果在dist目录中生成, 脚本会在编译结果中生成密钥, 如不需要可修改项目根目录/build.sh, 或自行替换编译结果中的密钥

生产环境

npm run production

注: 此命令需要编译后再运行

使用pm2开多进程, web进程默认开6个, 定时任务开一个。

项目内置了pm2, 但是建议全局安装一个pm2:

sudo npm i pm2 -g

pm2常用指令: pm2官方文档

关于作者

Eric Xie,前端开发者与工业设计师,擅长TS全栈开发、UI设计。个人网站:https://xiecangfeng.com

Releases

No releases published

Packages

No packages published