【Web服务开发】全技术栈,自动构建,一键部署
发表时间:2020-1-17
发布人:葵宇科技
浏览次数:26
SpringBoot是Java开发时常用框架,有非常丰富的组件和易用的功能。API服务脚手架从实际项目中整理升华,可直接扩展开发并应用于真实生产场景。
Python在AI领域是主流开发语言,Django是应用广泛的开源框架,Python + Django + Redis + ActiveMQ + Celery,搭建起一个跨平台异步任务调度系统。
开源代码:https://github.com/jextop
Java开发环境搭建
版本
功能
Java 8
开发语言,Jdk8或者更新版本
在线课程:掌握Java注解使用技巧,让代码简洁高效
博客:
l 阿里Java开发手册
l 阿里Java高效代码50例
l Java开发者路线图,1张表总结
l StringBuilder和StringBuffer的3个区别,说得清吗?
l 1张表记住Java基本数据类型(8个)
l 分类整理Java注解,详细列表
l Java多线程协同通信
IntelliJ IDEA
集成开发环境,Eclipse也被广泛使用
插件:阿里Java代码规范,P3C插件使用文档
Maven
依赖库管理
博客:阿里云Docker容器镜像服务自动构建SpringBoot项目时失败,mvn not found
Git
代码托管,GitHub,AliCode,Gitee等
博客:
Git常用命令,详细列表
Git分支和标签,如何发挥作用?
【Markdown高级技巧 】写出高大上的流程图、时序图、类图
MySQL
5.7.18
数据库系统,复杂的项目经常搭配NoSQL数据库
博客:Spring数据库事务失效的8大原因
Redis
3.2
缓存系统
博客:SpringBoot集成Redis,控制REST访问频率
ActiveMQ
5.15.11
异步消息队列,也可使用RabbitMQ,RocketMQ
博客:Spring集成ActiveMQ,详细代码手把手操作
LogStash
5.1
日志管理,ELK套件
Postman
7.13.0
API调试工具
在线课程:赋能API测试和集成,Postman可以这样用?
Spring组件集成
版本
技术要点
Spring Boot
2.2.2.RELEASE
基础框架
在线课程:【1小时进阶SpringBoot网络开发】REST接口 + HttpClient开发实战
博客:
l Spring项目启动时,ApplicationRunner和CommandLineRunner的用法
l Spring Boot常用脚手架,详细列表
l 1张表记住11个注解,Java读取HTTP Request参数
l 1张图理解Spring Boot最核心的3个注解
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和代码生成工具
Quartz
2.3.2
异步任务调度
博客:Spring集成Quartz实现定时任务和异步作业调度
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和LogStash,ELK日志处理
JUnit (Jupter)
5.5.2
单元测试
Mockito
3.1.0
模拟测试环境,配合JUnit使用
Swagger-UI
2.6.1
API文档,可直接调用接口。也常用JavaDoc
博客:Spring集成Swagger,3步自动生成API文档
Actuator
1.3.1
micrometer-core,服务监控,配合图形化展示工具,Prometheus + Grafana + AlertManager
Lombok
1.18.10
简化代码,由于对代码侵入程度较大,谨慎使用。
API功能开发
功能接口
技术要点
调用控制
@AccessLimited
自定义注解,控制REST接口访问频率
博客:使用注解和Redis,控制REST接口访问频率
@AuthRequired
生成access_token,授权接口访问
@UserRequired
配合Shiro,控制用户角色和授权
服务监控: http://localhost:8011/chk/
chk/http
检查HTTP连接外网
chk/db
检查MySQL数据库连接操作
chk/cache
检查Redis缓存连接操作
chk/mq
检查ActiveMQ消息队列
chk/job
检查Quartz任务调度
chk/json
检查JSON数据处理
文件上传下载
file/upload
文件上传,支持批量
博客:基于SpringBoot Multipart开发文件上传下载服务
file/download
文件下载
Jext技术社区
jext/info
获取社区信息,返回在线课程和博客信息
部署发布
要点
Docker, docker-compose
自动化部署开发运行环境,镜像托管使用阿里云容器镜像服务https://cr.console.aliyun.com/
博客专栏:Docker一键部署,3小时学以致用
l 【1小时记住Docker常用命令】Docker学以致用
l 【0成本】阿里云+Git+Docker自动构建系统
l 【1键部署神功】docker-compose一键部署Web服务
Terraform资源编排
阿里云ROS服务https://rosnext.console.aliyun.com/
管理后台
功能
JavaScript
开发语言,ES2015+
VS Code
集成开发环境,也常使用WebStorm, Sublime等
node
npm包管理工具
Ant Design Pro v4
基于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
异步消息队列,也可使用RabbitMQ,RocketMQ
博客:基于ActiveMQ和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在Win10环境中运行时需要
urllib
Python自带的标准库,HTTP开发
博客:掌握Python urllib,HTTP开发进阶
业务功能开发
业务场景
技术要点
AI人脸处理
AI语音处理
AI机器人聊天
AI语音录入
IoT物联网信息系统
视频直播
网课
。。。