【Web服務開發】全技術棧,自動構建,一鍵部署
發表時(shí)間:2020-1-17
發布人(rén):融晨科技
浏覽次數:36
SpringBoot是(shì)Java開發時(shí)常用框架,有非常豐富的(de)組件和(hé / huò)易用的(de)功能。API服務腳手架從實際項目中整理升華,可直接擴展開發并應用于(yú)真實生産場景。
Python在(zài)AI領域是(shì)主流開發語言,Django是(shì)應用廣泛的(de)開源框架,Python + Django + Redis + ActiveMQ + Celery,搭建起一個(gè)跨平台異步任務調度系統。
開源代碼:https://github.com/jextop
Java開發環境搭建
版本
功能
Java 8
開發語言,Jdk8或者更新版本
在(zài)線課程:掌握Java注解使用技巧,讓代碼簡潔高效
博客:
l 阿裏Java開發手冊
l 阿裏Java高效代碼50例
l Java開發者路線圖,1張表總結
l StringBuilder和(hé / huò)StringBuffer的(de)3個(gè)區别,說(shuō)得清嗎?
l 1張表記住Java基本數據類型(8個(gè))
l 分類整理Java注解,詳細列表
l Java多線程協同通信
IntelliJ IDEA
集成開發環境,Eclipse也(yě)被廣泛使用
插件:阿裏Java代碼規範,P3C插件使用文檔
Maven
依賴庫管理
博客:阿裏雲Docker容器鏡像服務自動構建SpringBoot項目時(shí)失敗,mvn not found
Git
代碼托管,GitHub,AliCode,Gitee等
博客:
Git常用命令,詳細列表
Git分支和(hé / huò)标簽,如何發揮作用?
【Markdown高級技巧 】寫出(chū)高大(dà)上(shàng)的(de)流程圖、時(shí)序圖、類圖
MySQL
5.7.18
數據庫系統,複雜的(de)項目經常搭配NoSQL數據庫
博客:Spring數據庫事務失效的(de)8大(dà)原因
Redis
3.2
緩存系統
博客:SpringBoot集成Redis,控制REST訪問頻率
ActiveMQ
5.15.11
異步消息隊列,也(yě)可使用RabbitMQ,RocketMQ
博客:Spring集成ActiveMQ,詳細代碼手把手操作
LogStash
5.1
日志管理,ELK套件
Postman
7.13.0
API調試工具
在(zài)線課程:賦能API測試和(hé / huò)集成,Postman可以(yǐ)這(zhè)樣用?
Spring組件集成
版本
技術要(yào / yāo)點
Spring Boot
2.2.2.RELEASE
基礎框架
在(zài)線課程:【1小時(shí)進階SpringBoot網絡開發】REST接口 + HttpClient開發實戰
博客:
l Spring項目啓動時(shí),ApplicationRunner和(hé / huò)CommandLineRunner的(de)用法
l Spring Boot常用腳手架,詳細列表
l 1張表記住11個(gè)注解,Java讀取HTTP Request參數
l 1張圖理解Spring Boot最核心的(de)3個(gè)注解
Apache Shiro
1.4.0
鑒權授權
Jwt
0.9.1
Token鑒權
Flyway
6.0.8
數據庫版本管理
博客:Spring集成Flyway,版本化管理數據庫
Ali Druid
1.1.20
數據庫連接池
博客:數據庫連接池,學習總結
MyBatis
3.5.3
數據庫持久層
MyBatis Plus
3.3.0
擴展MyBatis,含代碼生成工具Generator:生成Entity,Mapper
博客:Spring集成MyBatis和(hé / huò)代碼生成工具
Quartz
2.3.2
異步任務調度
博客:Spring集成Quartz實現定時(shí)任務和(hé / huò)異步作業調度
fastjson
1.2.60
JSON數據處理
Apache Commons
開發工具包,lang,collections,codec,io
Apache HTTP Components
4.5.2
網絡工具包,httpclient, httpcore, httpmime
博客:Spring集成HttpClient,進階HTTP開發
LogBack (SLF4J)
1.7.29
日志處理,默認使用LogBack,其它常用Log4j2, Log4j。搭配ELK系統,LogStash + ElasticSearch + Kibana
博客:SpringBoot集成LogBack和(hé / huò)LogStash,ELK日志處理
JUnit (Jupter)
5.5.2
單元測試
Mockito
3.1.0
模拟測試環境,配合JUnit使用
Swagger-UI
2.6.1
API文檔,可直接調用接口。也(yě)常用JavaDoc
博客:Spring集成Swagger,3步自動生成API文檔
Actuator
1.3.1
micrometer-core,服務監控,配合圖形化展示工具,Prometheus + Grafana + AlertManager
Lombok
1.18.10
簡化代碼,由于(yú)對代碼侵入程度較大(dà),謹慎使用。
API功能開發
功能接口
技術要(yào / yāo)點
調用控制
@AccessLimited
自定義注解,控制REST接口訪問頻率
博客:使用注解和(hé / huò)Redis,控制REST接口訪問頻率
@AuthRequired
生成access_token,授權接口訪問
@UserRequired
配合Shiro,控制用戶角色和(hé / huò)授權
服務監控: http://localhost:8011/chk/
chk/http
檢查HTTP連接外網
chk/db
檢查MySQL數據庫連接操作
chk/cache
檢查Redis緩存連接操作
chk/mq
檢查ActiveMQ消息隊列
chk/job
檢查Quartz任務調度
chk/json
檢查JSON數據處理
文件上(shàng)傳下載
file/upload
文件上(shàng)傳,支持批量
博客:基于(yú)SpringBoot Multipart開發文件上(shàng)傳下載服務
file/download
文件下載
Jext技術社區
jext/info
獲取社區信息,返回在(zài)線課程和(hé / huò)博客信息
部署發布
要(yào / yāo)點
Docker, docker-compose
自動化部署開發運行環境,鏡像托管使用阿裏雲容器鏡像服務https://cr.console.aliyun.com/
博客專欄:Docker一鍵部署,3小時(shí)學以(yǐ)緻用
l 【1小時(shí)記住Docker常用命令】Docker學以(yǐ)緻用
l 【0成本】阿裏雲+Git+Docker自動構建系統
l 【1鍵部署神功】docker-compose一鍵部署Web服務
Terraform資源編排
阿裏雲ROS服務https://rosnext.console.aliyun.com/
管理後台
功能
JavaScript
開發語言,ES2015+
VS Code
集成開發環境,也(yě)常使用WebStorm, Sublime等
node
npm包管理工具
Ant Design Pro v4
基于(yú)Ant Design, React, UmiJS等,https://pro.ant.design/
Python開發環境搭建
版本
功能
Python 3
3.6.3
開發語言,Python 3.6.3或者更新版本。
PyCharm
集成開發環境
Redis
3.2
緩存系統
ActiveMQ
5.15.11
異步消息隊列,也(yě)可使用RabbitMQ,RocketMQ
博客:基于(yú)ActiveMQ和(hé / huò)Celery搭建跨平台異步任務調度系統
Django組件集成
版本
功能
django-redis
4.10.0
Django集成Redis
博客:Django集成Redis,詳細代碼手把手操作
stomp.py
5.0.1
Python集成ActiveMQ
博客:Django集成ActiveMQ,封裝mq_service
celery
4.2.1
Django集成Celery,異步任務調度系統
博客:Django集成Celery,實現異步任務調度系統
flower
0.9.2
Celery任務管理後台
eventlet
0.24.1
Celery4.x在(zài)Win10環境中運行時(shí)需要(yào / yāo)
urllib
Python自帶的(de)标準庫,HTTP開發
博客:掌握Python urllib,HTTP開發進階
業務功能開發
業務場景
技術要(yào / yāo)點
AI人(rén)臉處理
AI語音處理
AI機器人(rén)聊天
AI語音錄入
IoT物聯網信息系統
視頻直播
網課
。。。