122
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | <2302软件工程社区> |
|---|---|
| 这个作业要求在哪里 | 团队作业—beta冲刺+事后诸葛亮 |
| 这个作业的目标 | Beta冲刺总结 |
| 团队名称 | 托码头小队 |
| 团队项目 | Tomato时间管理小程序 |
| 其他参考文献 | 《构建之法》 |
| 需完善或增加的功能 | 完成度 |
|---|---|
| 完成专注功能界面 | 已完成 |
| 完成待办功能界面 | 已完成 |
| 完成评论功能界面 | 已完成 |
| 调整文章详情页面 | 已完成 |
| 改善文章内容显示方法,防止文章内容超出文本框 | 已完成 |
| 修改文章发布功能,去除默认图片 | 已完成 |
| 优化页面功能逻辑 | 已完成 |
| 增加专注记时结束发送微信通知的功能 | 已完成 |
欢迎来到Tomato Time时间管理类微信小程序~,下面是使用指南
1、待办页面
1.1 点击右下角加号可以进行添加待办
1.2 右滑待办事务可以跳转至专注页面开始计时,计时完成后获得番茄奖杯,也会有通知告诉你计时结束了
1.3 左滑待办事务可以删除该事务
1.4 点击事务可以对事务进行修改
2、社交页面
2.1 我的关注页面中点击右下角加号可以搜索别的用户进行关注
2.2 我的粉丝页面可以回关关注我的人
3、 专注页面
3.1 可以进行专注计时,中间的时间可以修改,达到一定时间后可以获得对于数量的奖杯(10分钟一个)
4、空间页面
分为今日推荐和我的关注
点击对应文章进入详情页面后,可以点赞文章和评论文章
5、我的页面
5.1 点击头像修改个人信息
5.2 点击个人主页查看今日奖杯数
5.3 点击个人主页的右下角加号可以发布文章,图片最多上传5张






| 成员 | 体验、收获、心得 |
|---|---|
| 222100224林然鹏 | 体验:开发的日子很充实,能够解决问题,学习新的知识与新的解决办法。 收获:对springboot、mybatisplus等框架有了更好的掌握,学习了不少问题的解决办法;了解使用vue开发简单的管理页面。 心得:本次团队实战是一次很好的项目开发经历,积累了不少经验。 |
| 222100225林璞 | 体验:在beta阶段我主要完成了后台推送微信通知,协助运维部署服务器。 收获:在这个过程中我学习了如何去java如何去调用微信的第三方接口,除此之外,由于发送消息需要封装日期发送,这之中运用到的日期类是我之前所不熟悉的,在这次冲刺中也得以学习。除此之外,我还学习了一些服务器部署知识,补充了我在运维方面的知识。 心得:经过这次的团队实战,受益良多 |
| 222100226欧景天 | 体验:在经历了alpha阶段的磨炼后,我对前端开发愈发地熟练,得以在beta冲刺阶段开发速度快不少,逐渐将之前没做完的内容补齐。 收获:在beta阶段过程中更加得心应手,以前遇到的bug可能需要找半天,但是现在却能一眼看出来 心得:深刻意识到代码量的重要性。 |
| 222100119柯昊旸 | 体验:在beta冲刺阶段中,我主要在阅读代码,融入前端开发小组优化界面 收获:此次换组,我学到了团队分工协作、加强沟通的重要性 心得:团队工作中,保持良好的沟通是很重要的 |
| 222100235黄烨琳 | 体验:对接口进行测试还有修复接口Bug 收获:对springboot有了更深入的理解,对测试工作的麻烦小有体会 心得:测试和开发是截然不同的两种思维方式,开发只需要实现了就行,把各种错误处理一下,测试是要各种情况都进行测试,要尽可能找出开发中没有考虑到或者缺乏考虑的部分,保证缺陷能找出来或者没有缺陷,及时测出来Bug是好事,最后结束了才发现那就来不及了。 |
| 222100327赵振廷 | 体验:在beta冲刺阶段,我遇到了许多之前从未遇到过的问题和挑战。为了应对这些挑战,我不断地学习和提升自己的技能和知识。 收获:我阅读了大量的技术文档和资料,参加了各种线上和线下的技术交流活动。 心得:这些学习和交流让我更加深入地理解了技术的本质和原理,也让我更加自信地面对未来的挑战。 |
| 222100329衷进之 | 体验:在软件工程实践项目中,我作为前端工程师,经历了一段充满挑战和成长的体验。与团队紧密合作的过程中,我深刻体会到了团队协作的力量,通过相互支持和协作,我们成功地克服了项目中的各种难题。 收获:在这个项目中,我深刻认识到了注重代码质量的重要性,学会了编写清晰、可维护的代码。我也意识到了持续学习和改进的重要性,只有不断学习和提升自己,才能在不断变化的技术领域中立于不败之地。同时,合理的项目管理和时间规划也是项目成功的关键,只有合理规划时间,才能高效地完成任务 心得:在项目中,我获得了许多宝贵的收获。首先是对团队合作的深入理解,通过与团队紧密合作,我学会了如何与他人协作、沟通,共同解决问题。其次是在技术上的提升,通过不断学习新的前端技术和工具,我提高了自己的技术水平,拓宽了自己的技术视野。 |
| 052106112林黄骁 | 体验:第一次在云服务器上部署 nginx,感觉难度很大,和自己平常的 GUI 安装不一样,命令行一条一条的 收获:nginx 的配置拓展性太强,对于新手来说难度很大,HTTPS 极大的加强了网站的安全性,但是也提升了部署难度 心得: 我需要不断地提高自己的技术水平,不断学习。 |
服务器部署:
在本次beta阶段,我们组使用了两台服务器,一台是阿里云,用于生产阶段的测试和数据库数据的存放,另一台则是本次作业要求的华为云,用于部署后端代码和后台管理页面代码。
一、阿里云部署
1、首先进入到阿里云官网,登陆之后如下图进入到ecs控制台

2、购买完服务器后出现以下界面,拿到服务器的公网IP,用于后续连接

3、使用一些远程连接工具,如XShell,Tabby等,这里使用的是Tabby(工具的详细使用方式这里就不介绍了,可上网自行搜索),输入密码后进入系统,如下图:

4、安装mysql
这里是按照 阿里云ecs安装mysql官方教程安装的,安装成功后使用mysql -V查看mysql版本,出现下图则说明安装完成

5、使用datagrip连接数据库
由于服务器没有图形页面,使用起来很不方便,使用datagrip这种图形化页面操作比较方便
在操作之前请先修改服务器的安全组设置,打开3306端口,关闭服务器防火墙(或者防火墙开放mysql端口),否则无法链接
点击加号,选择新建数据源,选择mysql,输入主机地址(前面的公网ip),端口,数据库用户名和密码后点击测试连接
连接成功后就可以导入数据库数据了


6、服务器查看是否导入数据库
进入服务器,使用mysql -uroot -p123456(-u后填写用户名,-p后填写密码)进入到mysql,后使用show databases;查看所有架构,如果有自己导入的架构则数据成功导入。(本次作业数据库架构名为tomato_time,如下图所示导入成功)

二、华为云部署
1、进入华为云ecs控制台,点击服务器名字进入服务器管理页面,获取弹性公网ip以便进行后续远程连接(注意在购买服务器的时候要购买弹性公网ip,否则无法访问)


2、安装nginx,部署管理页面代码
2.1 依赖环境下载安装
yum install -y gcc pcre pcre-devel openssl openssl-devel
yum install -y zlib zlib-devel
2.2 编译安装nginx
第一步:把nginx的源码包上传至linux服务器
或者wget http://nginx.org/download/nginx-1.17.2.tar.gz
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。
第二步:解压源码包。tar -zxf nginx-1.17.2.tar.gz
第三步:进入nginx- nginx-1.17.2文件夹。 cd nginx-1.17.2/
第四步:参数设置如下:./configure (使用configure命令创建makefile, 生成 makefiled,定义好如何编译,为下一步的编译做准备)
第五步:make (编译)
第六步: make install (安装)
2.3 启动nginx
nginx安装位置在usr/local/nginx
在nginx目录下有一个sbin目录,sbin目录下有一个nginx可执行程序。
使用命令运行: ./nginx
2.4查看是否安装成功
使用nginx -v查看,出现版本号则安装成功

2.5 打包前端代码,上传服务器
将vue代码打包成一个名为dist的文件夹,使用Xftp上传到服务器,记住存放地址,后使用cd /usr/local/nginx/conf进入nginx配置的文件夹,修改nginx.conf配置文件,如下图

配置好后保存退出,浏览器访问后如下图所示,页面成功显示部署完成

3、安装docker,部署后端代码
3.1安装依赖环境
sudo yum install -y yum-utils
3.2 指定仓库
默认仓库为国外地址(可以百度找国内的镜像
比如
官方国内地址: https://registry.docker-cn.com/
阿里云: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
)
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.3 安装docker-ce(最新社区版)
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
3.4 启动docker
sudo systemctl start docker
3.5 测试是否安装成功
##查看版本,判断docker是否安装成功
docker version
##运行第一个docker程序
docker run hello-world

4、上传代码
将后端打包成一个jar包,在服务器创建一个文件夹命名为jar,将jar包存放进去,如下图所示

5、编写dokerfile文件
在jar包存放的文件夹里新建一个文件名为dockerfile,配置内容参考如下
FROM openjdk:17
WORKDIR /app
COPY ./TomatoTime-0.0.1-SNAPSHOT.jar /app/TomatoTime-0.0.1-SNAPSHOT.jar
ENV SERVER_PORT=8081
ENV TZ=Asia/Shanghai
ENTRYPOINT ["java","-jar","/app/TomatoTime-0.0.1-SNAPSHOT.jar"]
6、编写sh脚本运行docker容器
编写一个run.sh脚本,内容参考如下
echo "暂停容器"
docker stop tomato
echo "删除容器"
docker rm tomato
echo "删除镜像"
docker rmi tomato
echo "构建镜像"
docker build -t tomato .
echo "运行容器"
docker run -d --name tomato -p 8081:8081 -v /root/home/tomato/pictures:/root/home/tomato/pictures tomato
7.运行run.sh脚本
运行脚本后,使用docker ps查看容器是否存在,如下图则后端代码导入成功,至此所有配置完成

| 学号姓名 | 贡献度 |
|---|---|
| 222100224林然鹏 | 15 |
| 222100225林璞 | 15.5 |
| 222100226欧景天 | 16 |
| 222100232黄烨琳 | 10.5 |
| 222100327赵振廷 | 10 |
| 222100329衷进之 | 10.5 |
| 052106112林黄骁 | 10.5 |
| 222100119柯昊旸 | 11.5 |