1. 具备扎实的Java基础,以及良好的编码习惯;
2. 熟练使用 Spring、SpringMVC、SpringBoot、SpringCloud、MyBatis、MyBatisPlus等主流框架;
3. 熟练使用 MySQL、 SqlServer等主流关系/非关系型数据库,有一定的数据库调优能力;
4. 熟练使用 Apipost、 PostMan等测试工具及接口开发工具;
5. 熟练使用 RabbitMQ、ElasticSearch、minio、Redis、nacos等中间件;
6. 熟悉 Nginx、 Docker 等常用开发组件;
7. 熟悉XXL-Job 分布式任务调度系统;
8. 具有基本的前端(HTML、CSS、JavaScript)知识,有 Vue2/3、微信小程序开发经验;
9. 熟练使用idea、maven、git等开发工具;
10.了解redis核心数据结构使用场景,熟悉多级缓存架构,知道使用布隆过滤器降低并发压力,了解各种缓存高并发的使用场景,比如缓存雪崩,缓存穿透,缓存击穿等;
11.了解一些分布式场景的技术,比如分布式锁,分布式事务,分库分表等;
一个专门针对成人职业技能教育的网络课堂系统,网站提供了成人职业技能培训的相关课程。项目基于B2B2C的业务模式。
软件架构:SpringCloud+Spring Security+MyBatis+RabbitMQ+Nacos+MySQL+Gateway+Redis+Elasticsearch+Minio+XXL-job
核心模块包括:内容管理、媒资管理、课程搜索、订单支付、选课管理、认证授权。
责任描述:
1.配合产品经理需求分析,需求评审;
2.接口文档的编写、接口设计、数据库表格的设计;
3.负责课程模块的开发和实现;
4.负责文件模块的开发和实现;
5.认证鉴权模块的开发和实现;
6.负责选课支付
技术要点:
1.使用 Redis 缓存技术缓解数据库压力,存储课程缓存信息;
2.使用 elasticsearch 管理课程的索引,实现课程的精确搜索;
3.使用 MiniO 分布式文件系统存储图片、视频,并实现断点续传;
4.使用 JWT 生成令牌统一解决用户身份识别的问题;
5.使用 Nacos 作为注册中心,实现服务的发现和治理,使用 feign 完成微服务间的调用;
6.使用 RabbitMQ 消息队列将支付成功的结果异步通知给其他微服务;
7.通过任务调度的方案来解决 数据库、redis、ES、Minio 数据同步的分布式事务问题,课程发布后存到消息表,由任务调度系统定时扫描消息表,然后进行同步。
小程序主要用于预约美发服务,还有一个后台管理系统,用于美发店的负责人维护美发师、服务、作品以及处理客户的预约; 展示了美发店的所有美发师、服务以及作品。 在本项目中我负责前后端的开发。
园区的服务平台,该项目由 web 管理端+微信小程序客户端组成。 技术应用: uniapp 、微信小程序+nginx+SpringBoot、SpringTask、SpringCache、POI、SpringMVC、JWT 、阿里云 OSS、Swagger+SqlServer