怎么样运行Github上星星超级多的秒杀系统呢?

绪论

开门见山的说,Java校招面试界有一个贼拉出名的项目,无人不知无人不晓。那就是传说中的互联网Java秒杀系统 :miaosha。对,就是这么程序员的命名。

怎么样运行Github上星星超级多的秒杀系统呢?_第1张图片

可以看到,迄今为止,这个项目已经有13.3k的星星和3.1k的fork。

那么作为一个准备校招的本科生小白,当然对这个项目觊觎不已,但是由于时间不足一直无法染指。

正好趁着这段时间赋闲在家,来讲这个项目层层剥离,给各位观众老爷们娓娓道来。

面向人群

计算机科班本科三年级及以上及同等学力

环境

类别 工具 可选 说明
IDE IDEA 集成开发环境
Git Git 版本控制,代码托管
数据库 Mysql 数据库
数据库管理工具 Navicat 其他数据库管理工具 可视化管理数据库
远程连接工具 Xshell Putty 连接服务器
远程文件工具 Xftp 给服务器发送文件
服务器系统 CentOS7 Linux均可 有条件上VPS,无条件用虚拟机

项目首页

https://github.com/qiurunze123/miaosha

本教程地址

https://gitee.com/Agaogao/miaosha/blob/icanuser/doc/%E7%AC%AC%E4%B8%80%E9%83%A8%E5%88%86%E7%A7%92%E6%9D%80%E7%B3%BB%E7%BB%9F%E8%BF%90%E8%A1%8C%E6%95%99%E7%A8%8B.md

本部分内容

介绍如何能够至少运行一下这个项目

步骤

  1. 在秒杀项目首页(https://github.com/qiurunze123/miaosha)点击fork(如果不是想自己继续在此基础上修改的可以直接跳到步骤2)
  2. 使用git clone到本地
  3. 导入到idea
  4. pom.xml中加载依赖
  5. mysql中新建miaosha
  6. miaosha库运行miaosha.sql
  7. 部署redis
  8. 部署rabbitmq
  9. rabbitmq中添加miaoshatestmiaosha.queue队列
  10. mysqlredisrabbitmq的信息填入到src/main/resources/application.properties
  11. 运行com.geekq.miaosha.GeekQMainApplication
  12. 访问地址http://localhost:8080/login/to_login
  13. mysql miaosha数据库中把miaosha_userid字段改为自增(默认的id为手机号,密码是123456加1a2b3c混淆)
  14. 可以用自己的手机号注册
  15. 修改miaosha_good中的start_timeend_time
  16. 指定时间可进行秒杀

详细步骤

1

fork这一步是将别人的仓库复制到自己的账号中,所以如果只是想学习观摩运行,可以跳过这一步

2

git clone命令是将该项目从云端仓库,克隆一份到本地。相当于下载,所以不管是不是你的项目,都可以使用这个命令将其“据为己有”

3

打开idea

选择File-New-Project from Sources,将刚才clone的程序导入到开发环境中

怎么样运行Github上星星超级多的秒杀系统呢?_第2张图片

4

如果正确的打开,项目目录如下图所示。

怎么样运行Github上星星超级多的秒杀系统呢?_第3张图片

进入根目录中的pom.xml文件,这儿存放着运行本项目所需要的依赖。

右键pom.xml,选择Add as maven project或者如图,选择Maven-Reimport,即可从网上添加依赖,不需要自己导入jar包。

怎么样运行Github上星星超级多的秒杀系统呢?_第4张图片

注意:如果下载很慢,请更改仓库

pom.xml文件中加入以下代码,将仓库更改为阿里云的仓库

  <repositories>
    <repository>
      <id>aliyunid>
      <name>aliyunname>
      <url>http://maven.aliyun.com/nexus/content/groups/publicurl>
    repository>
  repositories>

5

使用Navicat或其他软件链接你的mysql数据库,新建miaosha

6

miaosha库运行根目录下的miaosha.sql文件,即可创建必要的表

怎么样运行Github上星星超级多的秒杀系统呢?_第5张图片

运行完之后,结果如图

怎么样运行Github上星星超级多的秒杀系统呢?_第6张图片

7

在你的服务器上部署redis

在这里推荐一键部署redis(https://www.cnblogs.com/cjyboy/p/11249422.html)

该脚本直接执行会出错,需要将windows换行符替换为Linux换行符,作者的命令有误

命令如下

sed -i 's/\r//' auto_install_redis.sh

8

然后是部署rabbitMQ

这个部分问题很多,安装Erlang rabbitMQ 都有诸多的问题,待老爷们自己解决

这里推荐这篇centos7 搭建rabbitmq服务 3.7.15(https://www.cnblogs.com/sz-jack/p/11121947.html)

不需要自己各种解压和转移文件夹

并且此时要新建一个admin账号方便后面使用

9

如果一切顺利,输入http://ip:15672/就可以进入rabbitMQ的管理界面了

怎么样运行Github上星星超级多的秒杀系统呢?_第7张图片

点击Queues,添加以下两个队列

怎么样运行Github上星星超级多的秒杀系统呢?_第8张图片

10

将刚才的mysql redis rabbitMQ的一些信息填入到中

怎么样运行Github上星星超级多的秒杀系统呢?_第9张图片

比如这几项,需要老爷们仔细查看文件结构,不要漏掉需要填写的

怎么样运行Github上星星超级多的秒杀系统呢?_第10张图片

11

一切无误后,点击左上方运行

怎么样运行Github上星星超级多的秒杀系统呢?_第11张图片

如果成功,将提示以下信息

怎么样运行Github上星星超级多的秒杀系统呢?_第12张图片

如果配置信息或者部署有问题的话,这一步bug很多,请自行google

12

进入登录界面http://localhost:8080/login/to_login

怎么样运行Github上星星超级多的秒杀系统呢?_第13张图片

此时已经成功将系统跑起来了

13-16

后面的内容都是对系统进行的简单测试,各位看官可酌情自我探索,这里先行不表

怎么样运行Github上星星超级多的秒杀系统呢?_第14张图片

怎么样运行Github上星星超级多的秒杀系统呢?_第15张图片

你可能感兴趣的:(java,后台,高并发)