学生程序设计能力提升平台综述

本文详细记录了在Ubuntu18.04系统上搭建学生程序设计能力提升平台的过程,包括环境配置、软件安装(如Java、Nginx、Tomcat、MySQL、RabbitMQ)以及防火墙设置。此外,还涉及了SpringBoot后端和Vue前端的编译步骤,以及项目分工中涉及的身份鉴权、自动化部署和数据统计等多个技术模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2021SC@SDUSC

学生程序设计能力提升平台综述

系统运行环境

  1. Ubuntu18.04+或主流云服务器系统
  2. mysql 8.0+
  3. tomcat 9.0.53 (tomcat 10.0以上版本无法运行)
  4. nginx 1.16.1+
  5. java 1.8
  6. rabbitmq 3.7.10+

编译环境

  1. java 1.8/java 8
  2. nodejs

平台的安装与配置(以ubuntu记录)

java环境的安装

# 更新包管理工具
sudo apt update
# 安装java8版本
sudo apt-get install openjdk-8-jdk-headless 

nginx的安装

# 安装nginx
sudo apt-get install nginx

tomcat的安装配置

获取tomcat程序

# 获取tomcat安装包
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz
# 解压安装包
tar -zxvf apache-tomcat-9.0.27.tar.gz

处于安全新建tomcat用户组以及用户

sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

解压配置tomcat

# 新建tomcat存放目录
sudo mkdir /opt/tomcat
# 解压文件放置到/opt/tomcat
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1

# 赋予tomcat用户组访问权限
cd /opt/tomcat
sudo chgrp -R tomcat /opt/tomcat

# 为tomcat组提供对conf目录及其所有内容的读访问权限,并执行对目录本身的访问
sudo chmod -R g+r conf
sudo chmod g+x conf

# 使tomcat用户成为webapps、work、temp和日志等目录的所有者::
sudo chown -R tomcat webapps/ work/ temp/ logs/

创建systemd并配置自启动

  1. Tomcat需要知道Java的安装位置。此路径通常称为“JAVA_HOME”。查找该位置的最简单方法是运行以下命令

    sudo update-java-alternatives -l
    
    java-1.11.0-openjdk-amd64       1081       /usr/lib/jvm/java-1.11.0-openjdk-amd64
    

    最后显示的就是JAVA_HOME的地址

  2. 生成tomcat.service文件

    sudo vim /etc/systemd/system/tomcat.service
    

    将以下内容粘贴到服务文件中。如果需要的话,修改JAVA_HOME的值,以匹配您在系统上找到的目录位置

    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target
    
    [Service]
    Type=forking
    
    Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
    Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
    Environment=CATALINA_HOME=/opt/tomcat
    Environment=CATALINA_BASE=/opt/tomcat
    Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
    Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
    
    ExecStart=/opt/tomcat/bin/startup.sh
    ExecStop=/opt/tomcat/bin/shutdown.sh
    
    User=tomcat
    Group=tomcat
    UMask=0007
    RestartSec=10
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    

    完成后,保存并关闭文件。

    接下来,执行以下命令

     # 重新加载systemd守护程序
     sudo systemctl daemon-reload
     # 启动Tomcat服务
     sudo systemctl start tomcat
     # 检查tomcat是否正常启动
     sudo systemctl status tomcat
     # 设置tomcat重启后自动启动
     sudo systemctl enable tomcat
    
  3. 调整系统防火墙打开8080端口

    sudo ufw allow 8080
    

    云服务器还需要查看服务器提供商的8080端口是否打开

mysql的安装配置

  1. 安装mysql

    sudo apt-get install mysql-server-8.0
    # 后面基本上都是yes,记住自己输入的密码就好
    
  2. 下载项目根目录中的init.sql文件

  3. 通过mysql -uroot -p < init.sql输入密码执行sql文件,初始化数据库

rabitmq安装

  1. 通过apt-get安装

    # 安装erlang语言环境
    sudo apt-get install erlang-nox
    # 配置公钥
    wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
    # 安装rabbitmq
    sudo apt-get install rabbitmq-server
    # 启用管理插件
    sudo rabbitmq-plugins enable rabbitmq_management
     # 重启rabbitmq
    sudo service rabbitmq-server restart 
    
  2. 配置防火墙

    sudo ufw allow 15762
    sudo ufw allow 5762
    

    云服务器还需要查看服务器提供商的15762、5762端口是否打开

  3. 新版本的rabbitmq不支持guest远程登陆,因此新建rabbitmq用户

    # 增加普通用户
    sudo rabbitmqctl add_user admin yourpassword
    # 给普通用户分配管理员角色 
    sudo rabbitmqctl set_user_tags admin administrator
    # 赋予virtual host中所有资源的配置、写、读权限以便管理其中的资源,也是添加远程访问权限
    sudo rabbitmqctl  set_permissions -p / admin '.*' '.*' '.*'
    

平台的编译

后端

平台的后端用springboot书写,需要java环境以及maven进行编译

# 后端项目目录下
mvn clean install -Dmaven.test.skip=true

前端

前端用vue书写,需要node.js环境进行编译

# 前端项目目录下
npm run build

个人项目分工

  1. 用户身份鉴权模块分析
  2. 集成与自动化部署分析
  3. rabbitmq异步任务执行分析
  4. 数据统计分析
  5. 传输可靠性分析
  6. 传输校验分析
  7. mybatis自定义语言注入分析
  8. OAuth2用户鉴权分析
  9. 多测试点实现
  10. 数据库不删除原则分析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值