怎麼樣運行Github上星星超級多的秒殺系統呢?

緒論

開門見山的說,Java校招面試界有一個賊拉出名的項目,無人不知無人不曉。那就是傳說中的互聯網Java秒殺系統 :miaosha。對,就是這麼程序員的命名。

可以看到,迄今爲止,這個項目已經有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的程序導入到開發環境中

4

如果正確的打開,項目目錄如下圖所示。

進入根目錄中的pom.xml文件,這兒存放着運行本項目所需要的依賴。

右鍵pom.xml,選擇Add as maven project或者如圖,選擇Maven-Reimport,即可從網上添加依賴,不需要自己導入jar包。

注意:如果下載很慢,請更改倉庫

pom.xml文件中加入以下代碼,將倉庫更改爲阿里雲的倉庫

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

5

使用Navicat或其他軟件鏈接你的mysql數據庫,新建miaosha

6

miaosha庫運行根目錄下的miaosha.sql文件,即可創建必要的表

運行完之後,結果如圖

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的管理界面了

點擊Queues,添加以下兩個隊列

10

將剛纔的mysql redis rabbitMQ的一些信息填入到中

比如這幾項,需要老爺們仔細查看文件結構,不要漏掉需要填寫的

11

一切無誤後,點擊左上方運行

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

如果配置信息或者部署有問題的話,這一步bug很多,請自行google

12

進入登錄界面http://localhost:8080/login/to_login

此時已經成功將系統跑起來了

13-16

後面的內容都是對系統進行的簡單測試,各位看官可酌情自我探索,這裏先行不表

發佈了52 篇原創文章 · 獲贊 33 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章