> 本教程采用的版本是v11.3.1,SpringCloud Alibaba版本。
[toc]
## 下載源碼
### 后端源碼
```
git clone -b v11.3.1 https://gitee.com/wukongcrm/crm_pro.git
```
## 悟空CRM使用的主要技術棧
| 名稱 | 版本 | 說明 |
| --- | --- | --- |
| spring-cloud-alibaba | 2.2.1.RELEASE(Hoxton.SR3) | 核心框架 |
| swagger | 2.9.2 | 接口文檔 |
| mybatis-plus | 3.3.0 | ORM框架 |
| sentinel | 2.2.1.RELEASE | 斷路器以及限流 |
| nacos | 1.2.1.RELEASE | 注冊中心以及分布式配置管理 |
| seata | 1.2.0 | 分布式事務 |
| elasticsearch | 2.2.5.RELEASE(6.8.6) | 搜索引擎中間件 |
| jetcache | 2.6.0 | 分布式緩存框架 |
| xxl-job | 2.1.2 | 分布式定時任務框架 |
| gateway | 2.2.2.RELEASE | 微服務網關 |
| feign | 2.2.2.RELEASE | 服務調用 |
| mysql | 5.7+| 數據存儲|
### 數據庫初始化
> 不建議使用root用戶,應創建對應業務的賬號。
```
create user 'wkcrm'@'%' identified by 'wkcrm%123';
GRANT ALL PRIVILEGES ON `wk_nacos`.* TO 'wkcrm'@'%';
GRANT ALL PRIVILEGES ON `wk_seata`.* TO 'wkcrm'@'%';
GRANT ALL PRIVILEGES ON `wk_xxl_job`.* TO 'wkcrm'@'%';
GRANT ALL PRIVILEGES ON `wk_crm_single`.* TO 'wkcrm'@'%';
flush privileges;
```
## 后端啟動
### 核心模塊啟動
1. gateway
2. admin模塊
3. authorization模塊
## 前端項目搭建
### 前端源碼
```
git clone https://gitee.com/wukongcrm/W72crm_web.git
```
### install
```
yarn install
```
### 前端啟動
```
npm install
npm run dev
```
- 寫在前面
- 如何閱讀源碼
- 第一部分 開源框架
- Netty
- 啟動過程
- SpringSecurityOauth2
- Quartz
- quartz啟動原理
- quartz定時調度任務觸發流程
- 第二部分 優質中間件源碼分析
- Canal
- Canal是如何偽裝為mysql的slave的?
- canal源碼調試
- Sentinel
- 核心概念梳理
- 滑動窗口實現原理
- jvm-sandbox
- jvm-sandbox-repeater
- Windows環境安裝
- 結果比對
- 第三部分 優質行業項目源碼分析
- 第一章 分庫分表實踐
- sharding-jdbc
- 第二章 DDD領域驅動
- 享同科技DDD開源框架
- J-IM
- 功能測試
- 悟空CRM
- 項目搭建
- 默認密碼
- dataX-web
- 項目搭建
- 部署報錯
- dolphinscheduler
- awescnb
- geek
- chrome插件-funds
- 優質開源項目備忘