You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.5 KiB
61 lines
2.5 KiB
2 months ago
|
## 技术栈
|
||
|
|
||
|
### 服务端
|
||
|
|
||
|
- go1.18 及以上
|
||
|
- HTTP 框架:[Hertz](https://www.cloudwego.io/docs/hertz/)
|
||
|
- RPC 框架:[Kitex](https://www.cloudwego.io/docs/kitex/)
|
||
|
- 中间件:kafka、redis
|
||
|
- 存储:mysql、hbase、minio
|
||
|
|
||
|
#### 项目启动
|
||
|
|
||
|
🌟 下面的内容需要配合 `DouTok/guidlines.md` 食用
|
||
|
|
||
|
0. 安卓手机 + pc,处在一个局域网内。
|
||
|
1. 克隆 reborn 分支代码(该分支仅用于验证项目启动,只能用于测试用户注册登陆流程,其他功能可能有问题,预计两天内合入main,开放所有功能)
|
||
|
2. 修改 hosts 文件,添加 `127.0.0.1 hb-master`。
|
||
|
3. 将 `./env/dependencies.yml` 中 `KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.119:9092` 的ip 替换成自己的局域网 IP。
|
||
|
4. 启动依赖环境:docker-compose -f ./env/dependencies.yml up -d(reborn 版相比 main 少了一些依赖,会影响部分功能,但是不影响开发者验证启动流程正确性)。
|
||
|
5. 登陆 mysql,在 DouTok 数据库中执行 scripts/DouTok.sql。
|
||
|
6. 通过容器访问 kafka,为需要 kafka 的服务创建 topic。
|
||
|
|
||
|
```shell
|
||
|
# 以交互式模式进入容器
|
||
|
docker exec -it 容器id /bin/bash
|
||
|
# 进入Kafka目录
|
||
|
cd /opt/kafka_2.13-2.8.1/
|
||
|
# 创建名为message_1的主题,1个分区,每个分区1个副本
|
||
|
bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic message_1
|
||
|
# 创建名为relation_1的主题,1个分区,每个分区1个副本
|
||
|
bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic relation_1
|
||
|
```
|
||
|
|
||
|
7. 启动服务(因为项目在迭代中,所以不同服务启动方式有些不同,详情参考 guidelines.md,将启动过程中涉及到的 kafka 的 ip 设置成局域网的 ip,对应配置文件路径为 DouTok/config/xxx,xxx 对应某一个服务。
|
||
|
|
||
|
8. 打开客户端,右下角“我”长按。
|
||
|
|
||
|
![image-20240227000742899](https://baize-blog-images.oss-cn-shanghai.aliyuncs.com/img/image-20240227000742899.png)
|
||
|
|
||
|
9. 跳转至输入连接的服务端口,这里输入连接的后端网关服务地址(最后一个 "/" 不要忘记):
|
||
|
|
||
|
![image-20240227000823094](https://baize-blog-images.oss-cn-shanghai.aliyuncs.com/img/image-20240227000823094.png)
|
||
|
|
||
|
10. 体验注册登陆等功能。
|
||
|
|
||
|
### 前端
|
||
|
|
||
|
- 技术栈:React Hooks、TypeScript、Redux Saga、Vite
|
||
|
|
||
|
- 项目目录
|
||
|
|
||
|
![image-20240226234007434](https://baize-blog-images.oss-cn-shanghai.aliyuncs.com/img/image-20240226234007434.png)
|
||
|
|
||
|
#### 项目启动
|
||
|
|
||
|
```shell
|
||
|
npm install
|
||
|
npm run dev
|
||
|
```
|
||
|
|